com.eclipsesource.v8.V8.shutdownExecutors()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(3.1k)|赞(0)|评价(0)|浏览(104)

本文整理了Java中com.eclipsesource.v8.V8.shutdownExecutors()方法的一些代码示例,展示了V8.shutdownExecutors()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。V8.shutdownExecutors()方法的具体详情如下:
包路径:com.eclipsesource.v8.V8
类名称:V8
方法名:shutdownExecutors

V8.shutdownExecutors介绍

[英]Shutdown all executors associated with this runtime. If force terminate is specified, it will forcefully terminate the executors, otherwise it will simply signal that they should terminate.
[中]关闭与此运行时关联的所有执行器。如果指定了强制终止,它将强制终止执行者,否则它只会发出他们应该终止的信号。

代码示例

代码示例来源:origin: eclipsesource/J2V8

} finally {
  releaseResources();
  shutdownExecutors(forceTerminateExecutors);
  if (executors != null) {
    executors.clear();

代码示例来源:origin: eclipsesource/J2V8

} finally {
  releaseResources();
  shutdownExecutors(forceTerminateExecutors);
  if (executors != null) {
    executors.clear();

代码示例来源:origin: eclipsesource/J2V8

@Test
public void testTerminateNestedExecutors() {
  V8 runtime = V8.createV8Runtime();
  runtime.terminateExecution();
  V8Executor executor = new V8Executor("while (true){}");
  V8Object key = new V8Object(runtime);
  runtime.registerV8Executor(key, executor);
  runtime.shutdownExecutors(false);
  assertTrue(runtime.getExecutor(key).isShuttingDown());
  key.close();
  runtime.close();
}

代码示例来源:origin: eclipsesource/J2V8

@Test
public void testForceTerminateNestedExecutors() throws InterruptedException {
  V8 runtime = V8.createV8Runtime();
  runtime.terminateExecution();
  V8Executor executor = new V8Executor("while (true){}");
  executor.start();
  V8Object key = new V8Object(runtime);
  runtime.registerV8Executor(key, executor);
  runtime.shutdownExecutors(true);
  assertTrue(runtime.getExecutor(key).isShuttingDown());
  executor.join();
  key.close();
  runtime.close();
}

代码示例来源:origin: com.eclipsesource.j2v8/j2v8_win32_x86_64

/**
 * Release native resources associated with this runtime. Once
 * released, a runtime cannot be reused.
 *
 * @param reportMemoryLeaks True if memory leaks should be
 * reported by throwing an IllegalStateException if any
 * objects were not released.
 */
public void release(final boolean reportMemoryLeaks) {
  if (isReleased()) {
    return;
  }
  checkThread();
  releaseResources();
  shutdownExecutors(forceTerminateExecutors);
  if (executors != null) {
    executors.clear();
  }
  releaseNativeMethodDescriptors();
  synchronized (lock) {
    runtimeCounter--;
  }
  _releaseRuntime(v8RuntimePtr);
  v8RuntimePtr = 0L;
  released = true;
  if (reportMemoryLeaks && (objectReferences > 0)) {
    throw new IllegalStateException(objectReferences + " Object(s) still exist in runtime");
  }
}

代码示例来源:origin: com.eclipsesource.j2v8/j2v8_macosx_x86_64

/**
 * Release native resources associated with this runtime. Once
 * released, a runtime cannot be reused.
 *
 * @param reportMemoryLeaks True if memory leaks should be
 * reported by throwing an IllegalStateException if any
 * objects were not released.
 */
public void release(final boolean reportMemoryLeaks) {
  if (isReleased()) {
    return;
  }
  checkThread();
  releaseResources();
  shutdownExecutors(forceTerminateExecutors);
  if (executors != null) {
    executors.clear();
  }
  releaseNativeMethodDescriptors();
  synchronized (lock) {
    runtimeCounter--;
  }
  _releaseRuntime(v8RuntimePtr);
  v8RuntimePtr = 0L;
  released = true;
  if (reportMemoryLeaks && (objectReferences > 0)) {
    throw new IllegalStateException(objectReferences + " Object(s) still exist in runtime");
  }
}

相关文章

微信公众号

最新文章

更多

V8类方法