Callbacks in Threads not Called

Better use event api() as it is proven to be working

I think the way you are using is not recommended.
Here says circular dependency is not recommended to avoid deadlocks: