Managing processes within suspend states and execution states
First Claim
1. A method for suspending one or more processes associated with an application, comprising:
- receiving a notification that the application is inactive;
identifying the one or more processes associated with the application which is inactive;
placing the one or more processes which were identified into a suspend state responsive to the notification that the application is inactive;
maintaining an application message queue associated with the application;
placing a first application message into the application message queue while the application is in the suspend state, the first application message received at a first time;
placing a second application message into the application message queue while the application is in the suspend state, the second application message received at a second time that is later than the first time;
determining that the second application message renders the first application message as being a stale message; and
upon resumption of at least one process of the one or more processes associated with the application, refraining from providing the first application message based on determining that the first application message is the stale message.
2 Assignments
0 Petitions
Accused Products
Abstract
One or more techniques and/or systems are provided for suspending logically related processes associated with an application, determining whether to resume a suspended process based upon one or more wake policies, and/or managing an application state of an application, such as timer and/or system message data. That is, logically related processes associated with an application, such as child processes, may be identified and suspended based upon logical relationships between the processes (e.g., a logical container hierarchy may be traversed to identify logically related processes). A suspended process may be resumed based upon a set of wake policies. For example, a suspended process may be resumed based upon an inter-process communication call policy that may be triggered by an application attempting to communicate with the suspended process. Application data may be managed while an application is suspended so that the application may be resumed in a current and/or relevant state.
45 Citations
30 Claims
-
1. A method for suspending one or more processes associated with an application, comprising:
-
receiving a notification that the application is inactive; identifying the one or more processes associated with the application which is inactive; placing the one or more processes which were identified into a suspend state responsive to the notification that the application is inactive; maintaining an application message queue associated with the application; placing a first application message into the application message queue while the application is in the suspend state, the first application message received at a first time; placing a second application message into the application message queue while the application is in the suspend state, the second application message received at a second time that is later than the first time; determining that the second application message renders the first application message as being a stale message; and upon resumption of at least one process of the one or more processes associated with the application, refraining from providing the first application message based on determining that the first application message is the stale message. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. One of a solid state storage device, an optical disk or a magnetic storage device comprising computer-executable instructions that are executable by one or more processors of a computing system to perform acts comprising:
-
receiving a notification that an application is inactive; iteratively traversing a logical container hierarchy to identify one or more processes associated with the application which is inactive; placing the one or more processes which were identified into a suspend state responsive to the notification that the application is inactive; maintaining a timer associated with at least one process of the one or more processes associated with the application; determining, upon the at least one process of the one or more processes being placed in to the suspend state, rebasing data of the timer; resuming the at least one process based at least on a wake policy associated with the application; and resuming the timer, upon the at least one process resuming, based at least on the rebasing data. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A system for suspending one or more processes associated with an application, comprising:
-
one or more processing units; and memory comprising instructions that are executable by at least one of the one or more processing units to; receive a notification that the application is inactive; iteratively traverse a logical container hierarchy to identify the one or more processes associated with the application which is inactive; place the one or more processes which were identified into a suspend state responsive to the notification that the application is inactive; maintain a timer associated with at least one process of the one or more processes associated with the application; determine, upon the at least one process of the one or more processes being placed in to the suspend state, rebasing data of the timer; resume the at least one process based at least on a wake policy associated with the application; and resume the timer, upon the at least one process resuming, based at least on the rebasing data. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
Specification