Support js py destory

pull/586/head
FongMi 2 years ago
parent 7c47082674
commit 8374849ec4
  1. 2
      app/src/main/java/com/fongmi/android/tv/api/loader/JarLoader.java
  2. 2
      app/src/main/java/com/fongmi/android/tv/api/loader/JsLoader.java
  3. 2
      app/src/main/java/com/fongmi/android/tv/api/loader/PyLoader.java
  4. 5
      chaquo/src/main/java/com/fongmi/chaquo/Spider.java
  5. 5
      quickjs/src/main/java/com/fongmi/quickjs/crawler/Spider.java

@ -36,7 +36,7 @@ public class JarLoader {
}
public void clear() {
for (Spider spider : spiders.values()) spider.destroy();
for (Spider spider : spiders.values()) App.execute(spider::destroy);
loaders.clear();
methods.clear();
spiders.clear();

@ -23,7 +23,7 @@ public class JsLoader {
}
public void clear() {
for (Spider spider : spiders.values()) spider.destroy();
for (Spider spider : spiders.values()) App.execute(spider::destroy);
jarLoader.clear();
spiders.clear();
}

@ -24,7 +24,7 @@ public class PyLoader {
}
public void clear() {
for (Spider spider : spiders.values()) spider.destroy();
for (Spider spider : spiders.values()) App.execute(spider::destroy);
spiders.clear();
}

@ -93,6 +93,11 @@ public class Spider extends com.github.catvod.crawler.Spider {
return result;
}
@Override
public void destroy() {
app.callAttr("destroy", obj);
}
private ByteArrayInputStream getStream(PyObject o, boolean base64) {
if (o.type().toString().contains("bytes")) {
return new ByteArrayInputStream(o.toJava(byte[].class));

@ -126,6 +126,11 @@ public class Spider extends com.github.catvod.crawler.Spider {
@Override
public void destroy() {
try {
call("destroy");
} catch (Throwable e) {
e.printStackTrace();
}
submit(() -> {
executor.shutdownNow();
ctx.destroy();

Loading…
Cancel
Save