发明名称 Automatic service lifecycle management
摘要 A method is described for assisting execution of an application that is implemented with individual blocks of program code that are executable with separate processes. The method includes receiving an indication that a first of the blocks desires availability of a service provided by a second of the blocks. The method further includes, in response to the receipt of the indication, instantiating an instance of code to handle the delivery of inter process requests from the first block to the second block. The method further includes, in response to the instance of code receiving a first request from the first block for the service, instantiating the second block for execution with a different process than the first block's process. The method further includes detecting that the second block has no pending requests and has not, over a period of time, received any new requests, and, terminating the second block in response.
申请公布号 US9317324(B2) 申请公布日期 2016.04.19
申请号 US201012980789 申请日期 2010.12.29
申请人 Apple Inc. 发明人 Van Vechten Kevin;Sorresso Damien Pascal
分类号 G06F13/00;G06F9/46;G06F9/44;G06F12/00;G06F9/48;G06F9/445;G06F9/54 主分类号 G06F13/00
代理机构 Blakely, Sokoloff, Taylor & Zafman LLP 代理人 Blakely, Sokoloff, Taylor & Zafman LLP
主权项 1. A computer-implemented method, comprising: launching an application for execution by a processor in a first process, wherein the application includes a plurality of blocks of program code, wherein a first block of program code is loaded in memory for the first process without loading other blocks of program code in memory when the application is launched; scanning the application to identify one or more services provided to the application by the other blocks of program code; making the services identified available to the first block in the first process, the services including a service provided by a second block; in response to a request received via the first block in the first process for one of the available services, instantiating an instance of code to handle delivery of inter process requests from said first block to said second block, the instance of code providing an application programming interface (API) to allow the first block to access the second block; in response to said instance of code receiving a first request from said first block for said service, instantiating said second block for execution within a second process that is different than the first process within which the first block is executed, andincrementing, by the instance of code, a counter associated with the second process; in response to a first response to the first request received from the second block representing a result of the service performed based on the first request, decrementing the counter by the instance of code; and terminating said second block in response to determining that the counter reaches a predetermined value and no new request has been received by the second block for a predetermined period of time.
地址 Cupertino CA US