发明名称 Asynchronous Execution of Tasks for a GUI
摘要 Particular embodiments provide for asynchronous execution of instructions using a multi-threaded approach to outsource low-level input/output-handling tasks. Particular embodiments may use (1) a main thread to handle execution of instructions to generate a hierarchy of layers representing a GUI, wherein each layer represents a logical grouping of components of the GUI, (2) an input thread to handle asynchronous execution of instructions to process user input based on interactions with the GUI, and (3) a graphics thread to handle asynchronous execution of instructions to generate and/or update display output in relation to one or more layers of the GUI hierarchy. The input thread may send information about received input directly to the graphics thread and the main thread at the same time, thereby enabling the graphics thread to begin refreshing the display output while the main thread performs any necessary processing of the user input.
申请公布号 US2015339033(A1) 申请公布日期 2015.11.26
申请号 US201414284304 申请日期 2014.05.21
申请人 Facebook, Inc. 发明人 Arnold Robert Douglas;Kaldor Jonathan M.;Koroskin Denis
分类号 G06F3/0484;G06F3/0485 主分类号 G06F3/0484
代理机构 代理人
主权项 1. A method comprising: by a computing device, executing, by a main thread, instructions to generate a GUI hierarchy comprising a representation of a graphical user interface (GUI), the GUI hierarchy comprising a hierarchical organization of layers, wherein each layer represents a logical grouping of components of the GUI and provide copies of the GUI hierarchy to an input thread and a graphics thread; by the computing device, asynchronously executing, by the graphics thread, instructions to render, based on the information about the user input received from the input thread, the GUI in relation to one or more layers of the GUI hierarchy; by the computing device, asynchronously executing, by the input thread, instructions to process user input to determine a gesture based on data received from input devices, wherein the data indicates user interactions with at least one identified layer of the GUI hierarchy and provide information about the user input to the main thread and to the graphics thread; and by the computing device, asynchronously executing, by the graphics thread, instructions to update, based on the information about the user input received from the input thread, the GUI in relation to one or more layers of the GUI hierarchy.
地址 Menlo Park CA US