I am completly stucked :( My application keeps freezing at different points, though those points always calls to py_pjsua. functions. I am using very simple approch, just main thread.. which is making a calls to py_pjsua.* (like creating a calls, players.. connecting ports) and a second thread is worker thread for pjsua. Is there any sequence of steps to avoid deadlocks? I know that internally there are mutexes and there is 4 steps in which order to aquire them, but this is not userfull for me i am working from python layer. Now as a last resort i am going to try to wrap all calls to py_pjsua.* into self.lock.aquire() .. so that only one call to pjsua at time will be possible. really hope it will help :( (App freezing after 10-sec up to 4-5 minues of work.. depends on number of simul calls.. if i set 1 call at time it can work for days)