Recent changes in `pollset_poll` added yielding the process using `emscripten_sleep` so event handlers can have time to process data and set events. However calling `emscripten_sleep` on every iteration when checking the pollset caused process starvation which slowed down the whole session massively. This commit fixes this issue by checking for signaled events 10 times before actually causing a yield. This avoids possible deadlocks while not slowing down the whole session pipeline.
FreeRDP: A Remote Desktop Protocol Implementation
FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Enjoy the freedom of using your software wherever you want, the way you want it, in a world where interoperability can finally liberate your computing experience.
Code Quality Status
Resources
Project website: https://www.freerdp.com/
Issue tracker: https://github.com/FreeRDP/FreeRDP/issues
Sources: https://github.com/FreeRDP/FreeRDP/
Downloads: https://pub.freerdp.com/releases/
Wiki: https://github.com/FreeRDP/FreeRDP/wiki
API documentation: https://pub.freerdp.com/api/
Security policy: https://github.com/FreeRDP/FreeRDP/security/policy
FAQ: https://github.com/FreeRDP/FreeRDP/wiki/FAQ
Contact
- Matrix room :
#FreeRDP:matrix.org(main)XMPP channel:no longer available#FreeRDP#matrix.org@matrix.org(bridged)- IRC channel :
#freerdp @ irc.oftc.net(bridged)
- Mailing list: https://lists.sourceforge.net/lists/listinfo/freerdp-devel
Microsoft Open Specifications
Information regarding the Microsoft Open Specifications can be found at: https://www.microsoft.com/openspecifications/
A list of reference documentation is maintained here: https://github.com/FreeRDP/FreeRDP/wiki/Reference-Documentation
Compilation
Instructions on how to get started compiling FreeRDP can be found on the wiki: https://github.com/FreeRDP/FreeRDP/wiki/Compilation