If I understand your question well, the answer is: No, the behavior is correct. There is a separate thread that generates the event, one for each EasyDAClient object. BUT, all such event notifications are generated on the same thread. This is by design. Having one thread for each notification would mean that a "block" in the event handler could cause the number of running threads increase to infinity, and we do not want that.