![](/img/trans.png)
[英]What is the best way to implement the python count function in java?
[英]What is the best way to run the same java function repeatedly in python?
我正在做一個項目,要求我在python中反復運行Java函數(就像在python中設計學習算法,但value函數是在Java中提供的)
那么這種情況下的做法是什么? 我應該每次都使用subprocess.run()來調用java函數嗎?還是應該使用Py4J,Jython或JPype之類的東西? 使用subprocess.run()與其他方法有什么區別?
由於我需要重復運行相同的 java函數,因此效率應該是首要考慮的問題。
subprocess
有兩個問題。 如果兩者都不相關,它將正常工作。
subprocess
相同的序列化,並且在您進行的每個調用之后都執行更多的序列化,並且FAQ通過說性能不是優先事項來證明這一點。 (Spark只是忽略了所有這些,而是使用自己的通道來處理所有事情。) subprocess
要好,因為您不必一直啟動和拆除JVM,但是在兩側編寫套接字協議都需要一點時間比在命令行上存儲文件和傳遞文件名要多做一些工作。 (這不是一個很大的障礙,但如果您以前從未做過這種事情,那就是一個問題。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.