Techniques for managing multiple threads in a browser environment
First Claim
Patent Images
1. A method comprising:
- loading initial content into a browser running on a client connected to a distributed network, said initial content including an application engine kernel logically distinct from the browser, the application engine kernel containing a minimum set of components to process and display the initial content including a thread management component and a blocking component for selectively blocking execution of a thread corresponding to a sub-application;
managing loading of application content over the distributed network into the browser via the application engine kernel, the application content including at least one sub-application including a user-interface (UI) and data, said thread management component managing asynchronous loading of the UI and data into the browser via concurrent execution of a plurality of threads corresponding to said at least one sub-application;
receiving a first user supplied event;
instantiating a first page load thread in response to the user supplied event to commence loading a first page;
instantiating a data load thread to commence loading a first data set associated with the first page;
blocking the first page load thread until the first data load has been completed;
terminating the first data load thread when the first data load is completed; and
unblocking the first page load thread to enable continued loading of the first page.
3 Assignments
0 Petitions
Accused Products
Abstract
Techniques for managing multiple threads in an asynchronous environment, such as a browser, are described. As a method, instantiating an event thread in response to a user event by a shell event handler block that provides shell functions for a user event. Once the event thread as been instantiated, managing the event thread by a generic thread manager block that provides a plurality of multithread management functions for the shell event handler. When required, blocking and unblocking the event thread by a blocking system that is arranged to block and unblock threads.
-
Citations
11 Claims
-
1. A method comprising:
-
loading initial content into a browser running on a client connected to a distributed network, said initial content including an application engine kernel logically distinct from the browser, the application engine kernel containing a minimum set of components to process and display the initial content including a thread management component and a blocking component for selectively blocking execution of a thread corresponding to a sub-application;
managing loading of application content over the distributed network into the browser via the application engine kernel, the application content including at least one sub-application including a user-interface (UI) and data, said thread management component managing asynchronous loading of the UI and data into the browser via concurrent execution of a plurality of threads corresponding to said at least one sub-application;
receiving a first user supplied event;
instantiating a first page load thread in response to the user supplied event to commence loading a first page;
instantiating a data load thread to commence loading a first data set associated with the first page;
blocking the first page load thread until the first data load has been completed;
terminating the first data load thread when the first data load is completed; and
unblocking the first page load thread to enable continued loading of the first page. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
identifying a particular type of browser running on the client; and
loading additional application kernel components specific to the type of browser that is identified.
-
-
8. The method of claim 1, further comprising:
-
receiving a second user supplied event during loading of the first data set; and
instantiating a second page load thread in response to the second user event, wherein the second page load thread executes concurrently with the first page load thread.
-
-
9. A computer readable medium having code stored thereon comprising an application engine kernel logically distinct from a browser, the application engine kernel containing a minimum set of components to process and display application content, which when loaded into the browser and executed performs operations including:
-
loading initial content into a browser running on a client connected to a distributed network, said initial content including an application engine kernel, the application engine kernel containing a minimum set of components to process and display the initial content including a thread management component and a blocking component for selectively blocking execution of a thread corresponding to a sub-application;
managing loading of application content over the distributed network into the browser via the application engine kernel, the application content including at least one sub-application including a user-interface (UI) and data, said thread management component managing asynchronous loading of the UI and data into the browser via concurrent execution of a plurality of threads corresponding to said at least one sub-application;
receiving a first user supplied event;
instantiating a first page load thread in response to the user supplied event to commence loading a first page;
instantiating a data load thread to commence loading a first data set associated with the first page;
blocking the first page load thread until the first data load has been completed;
terminating the first data load thread when the first data load is completed; and
unblocking the first page load thread to enable continued loading of the first page. - View Dependent Claims (10, 11)
-
Specification