How to properly make a callback from another class inside the background thread?

Inside a custom cpp library callbacks must bind through lambda (background thread).
If I bind callbacks inside the same class in which I call callback functions - all is ok. but if I’m trying to move the callback binding mechanism to a separate class (responsible for the library) through delegates - all is bad. Seems that delegates not working between threads and need to find another solution.