SG11201900010QA - Workflow-based object destruction - Google Patents
Workflow-based object destructionInfo
- Publication number
- SG11201900010QA SG11201900010QA SG11201900010QA SG11201900010QA SG11201900010QA SG 11201900010Q A SG11201900010Q A SG 11201900010QA SG 11201900010Q A SG11201900010Q A SG 11201900010QA SG 11201900010Q A SG11201900010Q A SG 11201900010QA SG 11201900010Q A SG11201900010Q A SG 11201900010QA
- Authority
- SG
- Singapore
- Prior art keywords
- destruction
- thread
- workflow
- resource
- international
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0261—Garbage collection, i.e. reclamation of unreferenced memory using reference counting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0269—Incremental or concurrent garbage collection, e.g. in real-time systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0269—Incremental or concurrent garbage collection, e.g. in real-time systems
- G06F12/0276—Generational garbage collection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
Abstract
INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT) -., (19) World Intellectual Property 1#11101111 01E101011M 3E1 0 1011111 01111 100 HO 111111111011011# Organization International Bureau (10) International Publication Number 03 (43) International Publication Date ......°' WO 2018/013377 Al 18 January 2018 (18.01.2018) W I PO I PCT (51) International Patent Classification: (72) Inventor: STALL, Jeffrey Evan; Microsoft Technology GOOF 9 / 50 (2006.01) GOOF 12/02 (2006.01) Licensing, LLC, One Microsoft Way, Redmond, Washing- ton 98052-6399 (US). (21) International Application Number: PCT/US2017/040570 (74) Agent: MINHAS, Sandip et al.; Microsoft Technology Li- (22) International Filing Date: censing, LLC, One Microsoft Way, Redmond, Washington 03 July 2017 (03.07.2017) 98052-6399 (US). (25) Filing Language: English (81) Designated States (unless otherwise indicated, for every kind of national protection available): AE, AG, AL, AM, (26) Publication Language: English AO, AT, AU, AZ, BA, BB, BG, BH, BN, BR, BW, BY, BZ, (30) Priority Data: CA, CH, CL, CN, CO, CR, CU, CZ, DE, DJ, DK, DM, DO, 15/210,864 14 July 2016 (14.07.2016) US DZ, EC, EE, EG, ES, FL GB, GD, GE, GH, GM, GT, HN, HR, HU, ID, IL, IN, IR, IS, JO, JP, KE, KG, KH, KN, KP, (71) Applicant: MICROSOFT TECHNOLOGY LI- KR, KW, KZ, LA, LC, LK, LR, LS, LU, LY, MA, MD, ME, CENSING, LLC [US/US]; One Microsoft Way, Redmond, MG, MK, MN, MW, MX, MY, MZ, NA, NG, NI, NO, NZ, Washington 98052-6399 (US). OM, PA, PE, PG, PH, PL, PT, QA, RO, RS, RU, RW, SA, (54) Title: WORKFLOW-BASED OBJECT DESTRUCTION 7 .-- 200 Cy- 216 106 -, 202 -, 102- THREAD I OBJECT DESTRUCTION OBJECT 104 - /- 104 WORKFLOW OBJECT RESOURCE 1 OBJECT RESOURCE2 z .- 114 A I r - 208 DESTROY DESTROY 116 I /.- 204 OBJECT RESOURCE 0 0U REFERENCE NT I T- 218 102 -, 212 -, 106- 202-, OBJECT OBJECT THREAD 1 OBJECT 104 -, DESTRUCTION DE ST RUCTION OBJECT 206 LIST WORKFLOW RESOURCE 2 REFERENCE X208 DESTROY 118 • 210- RESOURCE CREATE REFERENCE X 204 REFERENCE 1.1 COUNT 1 0- 220 102-, 212-, 106- 202-, OBJECT OBJECT THREAD 2 OBJECT DESTRUCTION 104- \ OBJECT DESTRUCTION 206 LIST WORKFLOW RESOURCE2 REFERENCE I ,-208 DESTROY RESOURCE 116 A REFERENCE c-202 / _214 II . COUNT 0 REFERENCE RELEASE FIG. 2 1-1 (57) : s in a computing environment are often utilized by threads through an object lifecycle, and are destroyed at the end IN of the object lifecycle to reclaim the computing resources used by the object. In some cases, a thread that initiates an object destruction IN of an object may be unable to complete the destruction (e.g., a second thread may hold a synchronization lock over an object resource of en e n the object). An object destruction workflow initiates the destruction of an object on behalf of a thread. If the object destruction workflow 1-1 encounters a failure to complete the object destruction, a new reference to the object is inserted into an object destruction list, as the © last reference to the object. A second thread discovers and releases the last reference in the object destruction list, prompting the object --.... GC destruction workflow to resume the attempt to destroy the object on behalf of the second thread. 1-1 0 ei C [Continued on next page] WO 2018/013377 Al MIDEDIMOMOIDEIREEMOOMMOIIIIIIDERVOIMIE SC, SD, SE, SG, SK, SL, SM, ST, SV, SY, TH, TJ, TM, TN, TR, TT, TZ, UA, UG, US, UZ, VC, VN, ZA, ZM, ZW. (84) Designated States (unless otherwise indicated, for every kind of regional protection available): ARIPO (BW, GH, GM, KE, LR, LS, MW, MZ, NA, RW, SD, SL, ST, SZ, TZ, UG, ZM, ZW), Eurasian (AM, AZ, BY, KG, KZ, RU, TJ, TM), European (AL, AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LT, LU, LV, MC, MK, MT, NL, NO, PL, PT, RO, RS, SE, SI, SK, SM, TR), OAPI (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, KM, ML, MR, NE, SN, TD, TG). Declarations under Rule 4.17: — as to applicant's entitlement to apply for and be granted a patent (Rule 4.17(H)) — as to the applicant's entitlement to claim the priority of the earlier application (Rule 4.17(iii)) Published: — with international search report (Art. 21(3))
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/210,864 US10223163B2 (en) | 2016-07-14 | 2016-07-14 | Workflow-based object destruction |
PCT/US2017/040570 WO2018013377A1 (en) | 2016-07-14 | 2017-07-03 | Workflow-based object destruction |
Publications (1)
Publication Number | Publication Date |
---|---|
SG11201900010QA true SG11201900010QA (en) | 2019-01-30 |
Family
ID=59337912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SG11201900010QA SG11201900010QA (en) | 2016-07-14 | 2017-07-03 | Workflow-based object destruction |
Country Status (17)
Country | Link |
---|---|
US (1) | US10223163B2 (en) |
EP (1) | EP3485375B1 (en) |
JP (1) | JP6941154B2 (en) |
KR (1) | KR102399406B1 (en) |
CN (1) | CN109478148B (en) |
AU (1) | AU2017295814B2 (en) |
BR (1) | BR112018077371A8 (en) |
CA (1) | CA3029992A1 (en) |
CL (1) | CL2019000006A1 (en) |
CO (1) | CO2018014030A2 (en) |
IL (1) | IL264145B (en) |
MX (1) | MX2019000541A (en) |
PH (1) | PH12018550216A1 (en) |
RU (1) | RU2746155C2 (en) |
SG (1) | SG11201900010QA (en) |
WO (1) | WO2018013377A1 (en) |
ZA (1) | ZA201808252B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747088B2 (en) * | 2013-04-22 | 2017-08-29 | Embarcadero Technologies, Inc. | Automatic reference counting |
JP2019121240A (en) * | 2018-01-09 | 2019-07-22 | 東芝メモリ株式会社 | Workflow scheduling system, workflow scheduling method and electronic apparatus |
CN110246255A (en) * | 2019-06-18 | 2019-09-17 | 深圳市简工智能科技有限公司 | Smart lock controls method, apparatus, computer readable storage medium and system |
CN113342427B (en) * | 2021-06-01 | 2022-08-16 | 青岛小鸟看看科技有限公司 | Program control method and device |
CN115442635A (en) * | 2021-06-04 | 2022-12-06 | 武汉斗鱼鱼乐网络科技有限公司 | Method, device, equipment and storage medium for cross-platform security filtration of bullet screen |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5398334A (en) | 1992-04-06 | 1995-03-14 | General Electric Company | System for automatic garbage collection using strong and weak encapsulated pointers |
US5758184A (en) * | 1995-04-24 | 1998-05-26 | Microsoft Corporation | System for performing asynchronous file operations requested by runnable threads by processing completion messages with different queue thread and checking for completion by runnable threads |
US6275857B1 (en) | 1996-10-30 | 2001-08-14 | Microsoft Corporation | System and method for freeing shared resources in a computer system |
US6230213B1 (en) | 1997-03-18 | 2001-05-08 | Compaq Computer Corporation | Extensible mechanism for providing safe automatic management of objects |
US6473773B1 (en) | 1997-12-24 | 2002-10-29 | International Business Machines Corporation | Memory management in a partially garbage-collected programming system |
US6119115A (en) * | 1998-03-12 | 2000-09-12 | Microsoft Corporation | Method and computer program product for reducing lock contention in a multiple instruction execution stream processing environment |
US6681263B1 (en) | 1998-03-31 | 2004-01-20 | Intel Corporation | Control of software object lifetime |
GB9906629D0 (en) | 1999-03-23 | 1999-05-19 | Koninkl Philips Electronics Nv | Memory reclamation method |
US6363403B1 (en) * | 1999-06-30 | 2002-03-26 | Lucent Technologies Inc. | Garbage collection in object oriented databases using transactional cyclic reference counting |
KR100333486B1 (en) * | 1999-12-27 | 2002-04-25 | 오길록 | Active object management method for object-oriented high level languages |
US7216136B2 (en) * | 2000-12-11 | 2007-05-08 | International Business Machines Corporation | Concurrent collection of cyclic garbage in reference counting systems |
US7237237B2 (en) | 2001-07-24 | 2007-06-26 | The Mathworks, Inc. | Designating an object for destruction |
US6728738B2 (en) | 2002-04-03 | 2004-04-27 | Sun Microsystems, Inc. | Fast lifetime analysis of objects in a garbage-collected system |
US7472144B2 (en) * | 2003-07-28 | 2008-12-30 | International Business Machines Corporation | Method and system for resolving memory leaks and releasing obsolete resources from user session data |
US7181463B2 (en) * | 2003-10-24 | 2007-02-20 | Microsoft Corporation | System and method for managing data using static lists |
US7363628B2 (en) * | 2005-06-27 | 2008-04-22 | Microsoft Corporation | Data centric and protocol agnostic workflows for exchanging data between a workflow instance and a workflow host |
CN101046755B (en) * | 2006-03-28 | 2011-06-15 | 郭明南 | System and method of computer automatic memory management |
US8548942B2 (en) * | 2006-10-04 | 2013-10-01 | Salesforce.Com, Inc. | Methods and systems for recursive saving of hierarchical objects to a database |
CN101788905A (en) * | 2009-01-22 | 2010-07-28 | 上海科泰世纪科技有限公司 | Object managing method of Applet |
CN101639779B (en) * | 2009-08-18 | 2012-07-18 | 腾讯科技(深圳)有限公司 | Resource release method and device |
EP2466455A1 (en) | 2010-12-15 | 2012-06-20 | Schneider Electric Buildings AB | Definition of objects in object-oriented programming environments |
WO2012105927A1 (en) | 2011-01-31 | 2012-08-09 | The Mathworks Inc. | System and method for determining an object's lifetime in a object oriented environment |
US9053017B2 (en) | 2011-09-09 | 2015-06-09 | Microsoft Technology Licensing, Llc | Managing object lifetime in a cyclic graph |
US9098515B2 (en) * | 2011-11-15 | 2015-08-04 | Sap Se | Data destruction mechanisms |
CN105373434B (en) * | 2015-12-16 | 2018-11-13 | 上海携程商务有限公司 | resource management system and method |
-
2016
- 2016-07-14 US US15/210,864 patent/US10223163B2/en active Active
-
2017
- 2017-07-03 AU AU2017295814A patent/AU2017295814B2/en active Active
- 2017-07-03 CA CA3029992A patent/CA3029992A1/en active Pending
- 2017-07-03 EP EP17739822.9A patent/EP3485375B1/en active Active
- 2017-07-03 WO PCT/US2017/040570 patent/WO2018013377A1/en unknown
- 2017-07-03 KR KR1020197001359A patent/KR102399406B1/en active IP Right Grant
- 2017-07-03 RU RU2019100443A patent/RU2746155C2/en active
- 2017-07-03 BR BR112018077371A patent/BR112018077371A8/en unknown
- 2017-07-03 JP JP2019500824A patent/JP6941154B2/en active Active
- 2017-07-03 SG SG11201900010QA patent/SG11201900010QA/en unknown
- 2017-07-03 MX MX2019000541A patent/MX2019000541A/en unknown
- 2017-07-03 CN CN201780043161.0A patent/CN109478148B/en active Active
-
2018
- 2018-12-06 ZA ZA2018/08252A patent/ZA201808252B/en unknown
- 2018-12-21 CO CONC2018/0014030A patent/CO2018014030A2/en unknown
- 2018-12-28 PH PH12018550216A patent/PH12018550216A1/en unknown
-
2019
- 2019-01-02 CL CL2019000006A patent/CL2019000006A1/en unknown
- 2019-01-08 IL IL264145A patent/IL264145B/en unknown
Also Published As
Publication number | Publication date |
---|---|
RU2019100443A (en) | 2020-07-13 |
BR112018077371A2 (en) | 2019-07-16 |
ZA201808252B (en) | 2020-05-27 |
IL264145B (en) | 2021-09-30 |
IL264145A (en) | 2019-02-28 |
AU2017295814B2 (en) | 2021-09-09 |
CA3029992A1 (en) | 2018-01-18 |
KR102399406B1 (en) | 2022-05-17 |
KR20190027823A (en) | 2019-03-15 |
RU2019100443A3 (en) | 2020-09-23 |
MX2019000541A (en) | 2019-07-04 |
US20180018206A1 (en) | 2018-01-18 |
EP3485375A1 (en) | 2019-05-22 |
US10223163B2 (en) | 2019-03-05 |
RU2746155C2 (en) | 2021-04-08 |
JP6941154B2 (en) | 2021-09-29 |
CL2019000006A1 (en) | 2019-04-26 |
WO2018013377A1 (en) | 2018-01-18 |
PH12018550216A1 (en) | 2019-10-28 |
BR112018077371A8 (en) | 2023-01-31 |
CN109478148A (en) | 2019-03-15 |
EP3485375B1 (en) | 2024-01-10 |
JP2019525321A (en) | 2019-09-05 |
AU2017295814A1 (en) | 2018-12-20 |
CN109478148B (en) | 2022-03-29 |
CO2018014030A2 (en) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SG11201900010QA (en) | Workflow-based object destruction | |
SG11201901511QA (en) | Managed query service | |
SG11201903607YA (en) | Efficiency enhancements in task management applications | |
SG11201903604PA (en) | Iot security service | |
SG11201809866PA (en) | Cryptographic applications for a blockchain system | |
SG11201902981RA (en) | Iot provisioning service | |
SG11201905460SA (en) | Data unsealing with a sealing enclave | |
SG11201906695VA (en) | Universal bchain e3a connections (ubec) | |
SG11201906796VA (en) | Systems and methods for generating, uploading, and executing code blocks within distributed network nodes | |
SG11201908293QA (en) | Selective application of reprojection processing on layer sub-regions for optimizing late stage reprojection power | |
SG11201903141QA (en) | Business processing method and apparatus | |
SG11201901550WA (en) | Method and apparatus for data processing | |
SG11201805795WA (en) | Systems and methods for securing and disseminating time sensitive information using a blockchain | |
SG11201803073TA (en) | Insect singulator system | |
SG11201805532XA (en) | Multivalent and multispecific 41bb-binding fusion proteins | |
SG11201809872TA (en) | Using hardware based secure isolated region to prevent piracy and cheating on electronic devices | |
SG11201903885RA (en) | Secure key management | |
SG11201902200TA (en) | Power control and triggering of sounding reference signal on multiple component carriers | |
SG11201809284UA (en) | Mobile device connection apparatus | |
SG11201804085SA (en) | Systems and methods for detection of malicious code in runtime generated code | |
SG11201809886VA (en) | Query optimizer for cpu utilization and code refactoring | |
SG11201905879WA (en) | Techniques and apparatuses for handling collisions between legacy transmission time interval (tti) communications and shortened tti communications | |
SG11201909685RA (en) | Methods and apparatus for characterising the environment of a user platform | |
SG11201907131TA (en) | A computer system for acquiring a control command | |
SG11201900283YA (en) | Codeword disabling in multi-subframe grants |