发明名称 Concurrent accesses of dynamically typed object data
摘要 A method and an apparatus for an enhanced object model to allow concurrent execution for program code generated from dynamic programming languages, such as JavaScript, are described. An index structure may be introduced to an object model representing a dynamically typed object in addition to a type structure and a data payload storing property or field values of the object. Elements of the index structure may point at corresponding property values as an indirection for accessing the object.
申请公布号 US9501409(B2) 申请公布日期 2016.11.22
申请号 US201414231464 申请日期 2014.03.31
申请人 Apple Inc. 发明人 Pizlo Filip J.
分类号 G06F9/44;G06F12/08;G06F9/455;G06F9/45 主分类号 G06F9/44
代理机构 Blakely, Sokoloff, Taylor & Zafman LLP 代理人 Blakely, Sokoloff, Taylor & Zafman LLP
主权项 1. A machine-readable non-transitory storage medium having instructions therein, which when executed by a machine, cause the machine to perform a method, the method comprising: providing an object model in a memory during runtime, the object model representing an object specified in a source code, the object model including a property structure, an index structure and value storages for the object, the property structure storing one or more existing properties of the object, the value storages storing one or more property values corresponding separately to the one or more existing properties, and the index structure storing references to the property values for the corresponding existing properties; generating first instructions for a first access to the object from the source code, the first access specified in the source code to update one of the existing properties with an updated property value; generating second instructions for a second access to the object from the source code, the second access specified in the source code to allocate a separate property structure, a separate index structure and an additional value storage, the separate property structure to store the existing properties and an additional property not included in the existing properties, the separate index structure to separate references to the value storages and an additional reference to the additional value storage corresponding to the additional property, and to update the additional property by storing an additional property value for the object in the additional value storage; and executing the first instructions and the second instructions concurrently to perform the first access and the second access to the object.
地址 Cupertino CA US