Open christian-pinto opened 1 month ago
@mjaguil
I will be working on threads and thread locking
While making events asynchronous we should also look into multi-threading in general.
The two places where multithreading is needed are:
For both the above we need to make sure that both the sunfish core library and the event interface are thread safe. This includes that the storage backends are also thread safe.
A way of working towards thread safe-ness is to use a database for storing the redfish tree.
We should evaluate a couple of alternatives:
When the sunfish core receives an event it handles it synchronously and the event sender waits for the entire time it gets processed. Events should return immediately for the client and be processed by a thread (or similar).