-
公开(公告)号:US20100122073A1
公开(公告)日:2010-05-13
申请号:US12268276
申请日:2008-11-10
申请人: Ravi Narayanaswamy , Xinmin Tian , Bratin Saha , Ali-Reza Adl-Tabatabai , Robert Geva , Clark Nelson , Sergey Preis , Sergey Kozhukhov , Aleksei G. Cherkasov
发明人: Ravi Narayanaswamy , Xinmin Tian , Bratin Saha , Ali-Reza Adl-Tabatabai , Robert Geva , Clark Nelson , Sergey Preis , Sergey Kozhukhov , Aleksei G. Cherkasov
IPC分类号: G06F9/30
CPC分类号: G06F9/466 , G06F9/3004 , G06F9/30087 , G06F9/3861 , G06F9/467 , G06F9/4812 , G06F2209/481
摘要: A method and apparatus for handling exceptions during execution of a transaction is herein described. A compiler associates a transaction exception handler (TEH) with a transaction in program code, such as through insertion of a call to the TEH. The TEH is also associated with an exception data structure, such as an unwind table, that is utilized during runtime to call an appropriate handler in response to an exception. Additionally, the TEH code is generated by the compiler and inserted into the program code. Upon encountering an exception during execution of the transaction, the TEH is capable of dynamically resizing the transaction to the point of the exception through an attempted commit.
摘要翻译: 这里描述用于在执行交易期间处理异常的方法和装置。 编译器将事务异常处理程序(TEH)与程序代码中的事务相关联,例如通过插入到TEH的调用。 TEH还与异常数据结构相关联,例如展开表,其在运行时期间用于响应于异常来调用适当的处理程序。 此外,TEH代码由编译器生成并插入到程序代码中。 在执行事务期间遇到异常时,TEH能够通过尝试提交来将事务动态地调整到异常点。