【发布时间】:2019-08-02 17:20:58
【问题描述】:
我正在尝试同时运行多个 Jython 文件,以便可以使用我的 PC 多处理器(特别是在 Hyperion 工作区的 FDM 中执行此操作)
有什么办法可以做到吗?
我试过用Java做,但是不识别线程函数,也用Python试过,这个版本的Jython没有并发库,无法导入。
import os
import sys
from java.io import *
from java.util import *
from java import *
from java.lang import *
from threading import *
import java.util.logging.Level;
import java.util.logging.Logger;
import org.python.core.PyObject;
import org.python.util.PythonInterpreter;
new Thread() {
public void run() {
java.lang.Runtime.getRuntime().exec("python test1.py")
}
}.start()
new Thread() {
public void run() {
java.lang.Runtime.getRuntime().exec("python test2.py")
}
}.start()
new Thread() {
public void run() {
java.lang.Runtime.getRuntime().exec("python test3.py")
}
}.start()
错误:
File "E:\Oracle\Middleware\EPMSystem11R1\products\FinancialDataQuality\Applications\FDMEE/data/scripts/custom/test.py", line 15
new Thread() {
^
SyntaxError: mismatched input 'Thread' expecting NEWLINE
【问题讨论】:
-
出了什么问题?
-
一旦你在 Python 文件中使用 Java 语法,但它也是不正确的 Java 语法。没有类,没有
main方法。 -
jython Work 就是这样,不是吗?
-
不,这不是 Jython 的工作方式。 Jython 是一个用 Java 编写的 Python 解释器。它解释 python 程序。您可以使用 python 中的 Java 库,仅此而已。不能用 Java 语法编写。
-
哦,我明白了,谢谢
标签: java python concurrency parallel-processing jython