Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-64020

Improve exec loop handling for webassembly

    XMLWordPrintable

    Details

      Description

      Currently exec loop handling has issues with 'child loops', secondary MainWindows and local event loops.

      More details on the Issue: Currently exec loop handling has issues with nested event loops, for example when displaying dialogs. It could also cause 100% cpu usage and application freezeing when used on a secondary thread.
      Solution: Patches have been done to allow main threads to run using asyncify - Asyncify automatically transforms your compiled code into a form that can be paused and resumed, and handles pausing and resuming for you, so that it is asynchronous (hence the name “Asyncify”) even though you wrote it in a normal synchronous way. Event loop can be run on the secondary thread.
       In testing CPU load reduced from 100% to 2% in problematic cases.
      This feature enables many other things such as sockets on a secondary thread

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              lpotter Lorn Potter
              PM Owner:
              Veli-Pekka Heinonen Veli-Pekka Heinonen
              Votes:
              15 Vote for this issue
              Watchers:
              25 Start watching this issue

                Dates

                Created:
                Updated:

                  Gerrit Reviews

                  There are no open Gerrit changes