WIPO logo
Mobile | Deutsch | Español | Français | 日本語 | 한국어 | Português | Русский | 中文 | العربية |
PATENTSCOPE

Search International and National Patent Collections
World Intellectual Property Organization
Search
 
Browse
 
Translate
 
Options
 
News
 
Login
 
Help
 
Machine translation
1. (WO2011139722) RESUMABLE METHODS
Latest bibliographic data on file with the International Bureau   

Pub. No.:    WO/2011/139722    International Application No.:    PCT/US2011/034006
Publication Date: 10.11.2011 International Filing Date: 26.04.2011
IPC:
G06F 9/44 (2006.01), G06F 9/45 (2006.01)
Applicants: MICROSOFT CORPORATION [US/US]; One Microsoft Way Redmond, Washington 98052-6399 (US) (For All Designated States Except US)
Inventors: MEIJER, Henricus Johannes Maria; (US).
TORGERSEN, Mads; (US).
GAFTER, Neal M.; (US).
GUSTAFSSON, Niklas; (US)
Priority Data:
12/767,811 27.04.2010 US
Title (EN) RESUMABLE METHODS
(FR) MÉTHODES INTERRUPTIBLES
Abstract: front page image
(EN)APIs are provided, that are external to a programming language but that provide functionality that can be plugged into a language compiler. The provided APIs tailor functionality associated with asynchronous programming, iterators or writing symmetric co-routines using a generalized pattern-based approach. Several types of resumable methods are provided in the APIs which can be applied to method bodies written in traditional program code. Syntactically distinguishable control points in method bodies written in traditional program code invoke transformation of the code by the compiler using the external APIs. The transformed code enables the pausing and resumption of the code sandwiched between control points in the transformed code. The source code contained within a method having control points in it is transformed so that code within the method can be executed in discrete parts, each part starting and ending at a control point in the transformed code.
(FR)L'invention porte sur des API, qui sont externes à un langage de programmation mais qui offrent une fonctionnalité qui peut être introduite dans un compilateur de langage. Les API décrites façonnent une fonctionnalité associée à une programmation asynchrone, des itérateurs ou l'écriture de co-routines symétriques à l'aide d'une approche à base de motif généralisée. Plusieurs types de méthodes interruptibles sont fournis dans les API qui peuvent être appliqués à des corps de méthode écrits en code de programme classique. Des points de contrôle pouvant être distingués d'un point de vue syntaxique dans des corps de méthode écrits en code de programme classique invoquent une transformation du code par le compilateur à l'aide des API externes. Le code transformé permet la mise en pause et la reprise du code pris en sandwich entre des points de contrôle dans le code transformé. Le code source contenu dans une méthode dans laquelle se trouvent des points de contrôle est transformé de telle manière qu'un code dans la méthode puisse être exécuté par parties discrètes, chaque partie commençant et se terminant au niveau d'un point de contrôle dans le code transformé.
Designated States: AE, AG, AL, AM, AO, AT, AU, AZ, BA, BB, BG, BH, BR, BW, BY, BZ, CA, CH, CL, CN, CO, CR, CU, CZ, DE, DK, DM, DO, DZ, EC, EE, EG, ES, FI, GB, GD, GE, GH, GM, GT, HN, HR, HU, ID, IL, IN, IS, JP, KE, KG, KM, KN, KP, KR, KZ, LA, LC, LK, LR, LS, LT, LU, LY, MA, MD, ME, MG, MK, MN, MW, MX, MY, MZ, NA, NG, NI, NO, NZ, OM, PE, PG, PH, PL, PT, RO, RS, RU, 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.
African Regional Intellectual Property Organization (BW, GH, GM, KE, LR, LS, MW, MZ, NA, SD, SL, SZ, TZ, UG, ZM, ZW)
Eurasian Patent Organization (AM, AZ, BY, KG, KZ, MD, RU, TJ, TM)
European Patent Office (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)
African Intellectual Property Organization (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, ML, MR, NE, SN, TD, TG).
Publication Language: English (EN)
Filing Language: English (EN)