| Index: include/v8.h | 
| diff --git a/include/v8.h b/include/v8.h | 
| index 99827feca124fa311af84bd143464dd7926b06ad..d3fc0fe348fbffb7aefbe0a7fb6553fc4ad45251 100644 | 
| --- a/include/v8.h | 
| +++ b/include/v8.h | 
| @@ -3918,6 +3918,8 @@ enum GCCallbackFlags { | 
| typedef void (*GCPrologueCallback)(GCType type, GCCallbackFlags flags); | 
| typedef void (*GCEpilogueCallback)(GCType type, GCCallbackFlags flags); | 
|  | 
| +typedef void (*InterruptCallback)(Isolate* isolate, void* data); | 
| + | 
|  | 
| /** | 
| * Collection of V8 heap information. | 
| @@ -4174,6 +4176,23 @@ class V8_EXPORT Isolate { | 
| */ | 
| void RemoveGCEpilogueCallback(GCEpilogueCallback callback); | 
|  | 
| +  /** | 
| +   * Request V8 to interrupt long running JavaScript code and invoke | 
| +   * the given |callback| passing the given |data| to it. After |callback| | 
| +   * returns control will be returned to the JavaScript code. | 
| +   * At any given moment V8 can remember only a single callback for the very | 
| +   * last interrupt request. | 
| +   * Can be called from another thread without acquiring a |Locker|. | 
| +   * Registered |callback| must not reenter interrupted Isolate. | 
| +   */ | 
| +  void RequestInterrupt(InterruptCallback callback, void* data); | 
| + | 
| +  /** | 
| +   * Clear interrupt request created by |RequestInterrupt|. | 
| +   * Can be called from another thread without acquiring a |Locker|. | 
| +   */ | 
| +  void ClearInterrupt(); | 
| + | 
| private: | 
| Isolate(); | 
| Isolate(const Isolate&); | 
|  |