本文整理了Java中com.eclipsesource.v8.V8.isReleased()
方法的一些代码示例,展示了V8.isReleased()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。V8.isReleased()
方法的具体详情如下:
包路径:com.eclipsesource.v8.V8
类名称:V8
方法名:isReleased
暂无
代码示例来源:origin: eclipsesource/J2V8
void checkThread() {
locker.checkThread();
if (isReleased()) {
throw new Error("Runtime disposed error");
}
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (released || v8.isReleased()) {
return "[Function released]";
}
return super.toString();
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (released || v8.isReleased()) {
return "[Array released]";
}
return super.toString();
}
代码示例来源:origin: eclipsesource/J2V8
void checkRuntime(final V8Value value) {
if ((value == null) || value.isUndefined()) {
return;
}
V8 runtime = value.getRuntime();
if ((runtime == null) ||
runtime.isReleased() ||
(runtime != this)) {
throw new Error("Invalid target runtime");
}
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Releases the underlying {@link V8} instance.
*
* This method should be invoked once you're done using this object,
* otherwise a large amount of garbage could be left on the JVM due to
* native resources.
*
* <b>Note:</b> If this method has already been called once, it
* will do nothing.
*/
public void release() {
if ((v8 != null) && !v8.isReleased()) {
// Release the V8 instance from the V8 thread context.
run(new V8Runnable() {
@Override
public void run(final V8 v8) {
if ((v8 != null) && !v8.isReleased()) {
v8.close();
}
}
});
}
}
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Release the lock if it's currently held by the calling thread.
* If the current thread does not hold the lock, and error will be
* thrown. If no thread holds the lock then nothing will happen.
*/
public synchronized void release() {
if ((released && (thread == null)) || runtime.isReleased()) {
return;
}
checkThread();
runtime.releaseLock(runtime.getV8RuntimePtr());
thread = null;
released = true;
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Releases the NodeJS runtime.
*/
public void release() {
v8.checkThread();
if (!require.isReleased()) {
require.close();
}
if (!v8.isReleased()) {
v8.close();
}
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (isReleased() || v8.isReleased()) {
return "[Object released]";
}
v8.checkThread();
return v8.toString(v8.getV8RuntimePtr(), getHandle());
}
代码示例来源:origin: eclipsesource/J2V8
if (isReleased()) {
return;
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (released || v8.isReleased()) {
return "[Array released]";
}
return super.toString();
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (released || v8.isReleased()) {
return "[Function released]";
}
return super.toString();
}
代码示例来源:origin: eclipsesource/J2V8
void checkThread() {
locker.checkThread();
if (isReleased()) {
throw new Error("Runtime disposed error");
}
}
代码示例来源:origin: eclipsesource/J2V8
void checkRuntime(final V8Value value) {
if ((value == null) || value.isUndefined()) {
return;
}
V8 runtime = value.getRuntime();
if ((runtime == null) ||
runtime.isReleased() ||
(runtime != this)) {
throw new Error("Invalid target runtime");
}
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Releases the underlying {@link V8} instance.
*
* This method should be invoked once you're done using this object,
* otherwise a large amount of garbage could be left on the JVM due to
* native resources.
*
* <b>Note:</b> If this method has already been called once, it
* will do nothing.
*/
public void release() {
if ((v8 != null) && !v8.isReleased()) {
// Release the V8 instance from the V8 thread context.
run(new V8Runnable() {
@Override
public void run(final V8 v8) {
if ((v8 != null) && !v8.isReleased()) {
v8.close();
}
}
});
}
}
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Release the lock if it's currently held by the calling thread.
* If the current thread does not hold the lock, and error will be
* thrown. If no thread holds the lock then nothing will happen.
*/
public synchronized void release() {
if ((released && (thread == null)) || runtime.isReleased()) {
return;
}
checkThread();
runtime.releaseLock(runtime.getV8RuntimePtr());
thread = null;
released = true;
}
代码示例来源:origin: eclipsesource/J2V8
/**
* Releases the NodeJS runtime.
*/
public void release() {
v8.checkThread();
if (!require.isReleased()) {
require.close();
}
if (!v8.isReleased()) {
v8.close();
}
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public String toString() {
if (isReleased() || v8.isReleased()) {
return "[Object released]";
}
v8.checkThread();
return v8.toString(v8.getV8RuntimePtr(), getHandle());
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testExceptionInReleaseHandlerStillReleasesV8() {
V8 testV8 = V8.createV8Runtime();
V8Runnable releaseHandler = mock(V8Runnable.class);
doThrow(new RuntimeException()).when(releaseHandler).run(any(V8.class));
testV8.addReleaseHandler(releaseHandler);
try {
testV8.close();
} catch (Exception e) {
assertTrue(testV8.isReleased());
return;
}
fail("Exception should have been caught.");
}
代码示例来源:origin: eclipsesource/J2V8
if (isReleased()) {
return;
代码示例来源:origin: com.eclipsesource.j2v8/j2v8_macosx_x86_64
/**
* Releases the NodeJS runtime.
*/
public void release() {
v8.checkThread();
if (!require.isReleased()) {
require.release();
}
if (!v8.isReleased()) {
v8.release();
}
}
内容来源于网络,如有侵权,请联系作者删除!