PREDICATIVE AND PERSISTENT EVENT STREAMS
First Claim
1. A method performed on a computer processor, said method comprising:
- monitoring an input stream comprising a series of asynchronous events, said monitoring being performed by an observer object, said series of asynchronous events being defined by a collection of asynchronous events, said collection having a data type to which said asynchronous events conform;
determining a history of events from said input stream;
spawning a first event stream in response to a first event in said input event stream, said first event stream comprising a plurality of events;
determining a predicted future event based on said history of events and said current context;
spawning a predicted event stream in response to said predicted future event, said predicted event stream comprising predicted tasks to perform, said predicted tasks being one event on said predicted event stream;
performing a plurality of said predicted tasks in said predicted event stream prior to determining an actual outcome for said future event;
binding said predicted event stream and said first event stream into an output stream; and
dispositioning said predicted task stream based on said actual outcome.
2 Assignments
0 Petitions
Accused Products
Abstract
An event driven application may predict a future event and spawn an event stream from the predicted event. The spawned event stream may be performed as a predicted operation until the prediction is confirmed to be correct or incorrect. The predicted operation may generate results that may be present when the prediction is confirmed. In some cases, the results may be used prior to the predicted event, while in other cases, the results may be cached until the prediction is confirmed. In some cases, the predicted operation may be merged with an actual event stream when the predicted event occurs. The prediction mechanism may enhance performance, enable operations that would otherwise be difficult, and may save battery life or energy in some devices.
-
Citations
20 Claims
-
1. A method performed on a computer processor, said method comprising:
-
monitoring an input stream comprising a series of asynchronous events, said monitoring being performed by an observer object, said series of asynchronous events being defined by a collection of asynchronous events, said collection having a data type to which said asynchronous events conform; determining a history of events from said input stream; spawning a first event stream in response to a first event in said input event stream, said first event stream comprising a plurality of events; determining a predicted future event based on said history of events and said current context; spawning a predicted event stream in response to said predicted future event, said predicted event stream comprising predicted tasks to perform, said predicted tasks being one event on said predicted event stream; performing a plurality of said predicted tasks in said predicted event stream prior to determining an actual outcome for said future event; binding said predicted event stream and said first event stream into an output stream; and dispositioning said predicted task stream based on said actual outcome. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
a processor; an input event monitor that monitors an input stream comprising a series of asynchronous events, said monitoring being performed by an observer object, said series of asynchronous events being defined by a collection of asynchronous events, said collection having a data type to which said asynchronous events conform; an event predictor that; predicts a future event and launches a predicted event stream comprising a plurality of tasks to execute in response to said future event; and binds said predicted event stream into an output stream; an event dispositioner that; determines an actual outcome for said event; and disposes said predicted task stream based on said actual outcome. - View Dependent Claims (15, 16)
-
-
17. A method performed on a computer processor, said method comprising:
-
monitoring an input stream comprising a series of asynchronous events, said monitoring being performed by an observer object, said series of asynchronous events being defined by a collection of asynchronous events, said collection having a data type to which said asynchronous events conform; determining a history of events from said input stream and at least one other event stream; spawning a first event stream in response to a first event in said input event stream, said first event stream comprising a plurality of events; determining a current context for said series of events; determining a predicted future event based on said history of events and said current context; spawning a first predicted event stream in response to said first predicted future event, said first predicted event stream comprising predicted tasks to perform, said predicted tasks being one event on said predicted event stream; performing a first predicted task in said predicted event stream prior to determining an actual outcome for said future event; spawning a second predicted event stream in response to said first predicted task; binding said first predicted event stream, said second predicted event stream, and said first event stream into an output stream; and dispositioning said predicted task stream based on said actual outcome. - View Dependent Claims (18, 19, 20)
-
Specification