mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-06 05:35:47 +01:00
WebSockets: notify server there are pending client updates
This is an update to the surface ArdourFeedback class that is needed to support the new event loop integration method. The various session event callbacks cannot be queued in the surface event loop because that would create a delay between the time such events are fired and the time for writing to clients arrive, due to lws_service() blocking while it waits to read. To solve this issue a helper AbstractUI is created for catching events as soon as possible and issuing a call to lws_cancel_service(). See WebsocketsServer::glib_idle_callback()
This commit is contained in:
parent
b3661af92a
commit
e3569b6469
6 changed files with 83 additions and 6 deletions
|
|
@ -195,6 +195,7 @@ WebsocketsServer::stop ()
|
|||
|
||||
if (_g_source) { // Method 3
|
||||
g_source_destroy (_g_source);
|
||||
lws_cancel_service (_lws_context);
|
||||
}
|
||||
|
||||
if (_lws_context) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue