-
Notifications
You must be signed in to change notification settings - Fork 867
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
fix a crash inside updateConnStatus #2194
base: master
Are you sure you want to change the base?
Conversation
This comment has been minimized.
This comment has been minimized.
or @maxsharabayko @ethouris ,do you have some suggestions to solve this crash more gracefully? |
@cg82616424 could you please define the version of SRT you experience this issue with? |
thanks, @maxsharabayko my srt version is 1.4.3.rc0; but I reviewed the code on master branch, I think, this problem is not fixed yet |
Hi @maxsharabayko ,will this pull request be merged? |
Hi, @cg82616424. It is scheduled for review. |
@cg82616424 |
Hi @maxsharabayko : |
Ok, I made my own branch to solve the merge problems; I have a question though. Access to what exactly data does this new mutex guard? If my understanding is correctly, it simply prevents from deletion those multiplexers that are currently being under check in the I'm simply trying to understand the motivation. All other things rather look good, at least the new mutex seems to be used in the right order in all places where it's used, so I see no deadlock risk here. |
I have made my own branch with changes, in case when there were problems with this one: |
At First , I have to emphasize that this is a crash which is very difficult to reproduce.
My program is running on about 20000 android devices, and crash about 1~2 times one day.
Secondly, let me try to explain the cause and recurrence conditions of crash.
0. the characteristic that my app use srt:
1) my app use srt not ony to transmit videos, but also files, messages and so on
2) app will maintain 30 ~ 40 SRT connections. If some links are broken, a new connection will be quickly established to supplement them
3)the survival time of each link is not necessarily from a few seconds to tens of minutes
4) the network speed may be very high sometimes, from 1Mbps to 40 Mbps
5) all connection are async mode,