主权项 |
1. A method for inserting code into a running thread of execution, the method comprising:
setting, by one or more computer processors, a first set of bits to a first value, wherein the first value indicates that a first set of instructions should be inserted onto a stack of a thread; setting, by the one or more computer processors, a second set of bits to a second value, wherein the second value indicates that no set of instructions should be inserted onto the stack until the second set of bits is set to a third value; executing, by the one or more computer processors, a second set of instructions associated with a first safepoint, wherein the second set of instructions comprises one or more instructions to determine if the first set of bits is set to the first value; determining, by the one or more computer processors, that the first set of bits is set to the first value; setting, by the one or more computer processors, a third set of bits to a fourth value, wherein the fourth value indicates that the first set of instructions should be inserted onto the stack, based at least in part on execution of a third set of instructions associated with a second safepoint; setting, by the one or more computer processors, the second set of bits to the third value, wherein the third value indicates that the thread can safely execute the third set of instructions associated with the second safepoint and insert the first set of instructions onto the stack; executing, by the one or more computer processors, the third set of instructions associated with the second safepoint; and inserting, by the one or more computer processors, the first set of instructions onto the stack. |