1
私はjniレイヤーを呼び出すJavaコードをいくつか持っています。JNIコールバックスレッド
JNIレイヤーはサードパーティーなので、調べることはできませんが、ある時点で新しいスレッドが作成され、Javaコードへのコールバックが行われます。
このコールバックメソッドの中で、別のJavaスレッドを作成してスレッドでstartを呼び出します。ただし、このJavaスレッドは実行されません。そのような存在は決してありません。
JNIコールからスレッドを作成すると問題が戻ってきますか?
コアサイズのthreadpoolexecutorを作成し、その代わりにexecutorにタスクを置くことができますが、コールバック内でスレッドを作成できない理由を知りたいと思います。
これは妥当な解決策のようですが、これらのメソッドは呼び出されず、JVMへのコールバックはまだ機能しますが、そのコールバック内のスレッドの作成はできません。 – madlad
@ user594950 JNI仕様には、これらのメソッドがなくても動作することは何もありません。 – EJP
それは意味があります、助けてくれてありがとう – madlad