-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lock up of implemented UI. #107
Comments
Hi Steve, as a rule of thumb you should run your SIP UserAgent in a background thread and update your UI through a SynchronizationContext making no downstream calls to pjsip4net in callbacks you'd dispatch. Cheers |
I've concluded that it is a decision app developers supposed to make on their own, whether to dispatch events to any SyncCtx present. |
Here, found some old samples: |
Thanks, I'll take a look! |
Hi Steve, did it work for you? Care to share your findings? |
Describe the bug
I have implemented pjsip4net in a WinForms (4.7.1) application and use the .Build.Start() function to start pjsip from Program.cs. Everything works correctly except I keep getting regular but intermittent UI lockups. I initially thought it would be because there are locks around procedures like "GetCallById" and multiple calls might be deadlocking the UI but i've removed all these and it still happens. I've also run a profiler on the code and I can't see any deadlocks occurring.
It doesn't appear to be a call state change, as it usually happens mid-call. The call is not dropped and the user's can still hear each other. I have no errors logged and nothing in the trace logs. The whole UI just freezes. I think pjsip is being hosted in the main UI thread but I'm not sure why this would lock the UI. Is there a way i can move it to another thread?
To Reproduce
Steps to reproduce the behavior:
Expected behavior
UI should stay responsive
Screenshots
N/A
Environment (please complete the following information):
App configuration (please complete the following information):
Additional context
Add any other context about the problem here.
The text was updated successfully, but these errors were encountered: