Open barisyild opened 6 months ago
I found a bug that froze the application. https://github.com/openfl/lime/blob/1c8ecd30eab3f2b5840a9f8abf3887d8be35aa2d/project/src/net/curl/CURLBindings.cpp#L2506 in this line, curl_multi_perform some times takes too many times due to curl_getaddrinfo. If you resize the window (or collect gc) while the application is in mutex lock, the application freezes until curl_multi_perform is completed!
Reproduce:
Here is real world callstack grabbed from testflight user: Main Thread:
Curl Thread:
Another example of main thread for garbage collection problem:
I also tried on Windows, iOS and confirmed the problem.
I found a bug that froze the application. https://github.com/openfl/lime/blob/1c8ecd30eab3f2b5840a9f8abf3887d8be35aa2d/project/src/net/curl/CURLBindings.cpp#L2506 in this line, curl_multi_perform some times takes too many times due to curl_getaddrinfo. If you resize the window (or collect gc) while the application is in mutex lock, the application freezes until curl_multi_perform is completed!
Reproduce:
Here is real world callstack grabbed from testflight user: Main Thread:
Curl Thread:
Another example of main thread for garbage collection problem:
I also tried on Windows, iOS and confirmed the problem.