相关疑难解决方法(0)

线程有不同的堆吗?

据我所知,当操作系统创建线程时,每个线程都会获得一个不同的堆栈.我想知道每个线程是否也有一个与自身不同的堆?

c linux windows stack multithreading

112
推荐指数
3
解决办法
6万
查看次数

停止调用JNI函数的Java线程

在这里,我想停止我的线程或杀死我在Java层上创建的线程,这个线程正在调用JNI函数.有时根据我的应用程序要求,我必须在某些条件下停止此JNI函数执行,否则不会.

new Thread(new Runnable() {
    @Override
    public void run() {
         // My jni function call, It calls my JNI layer C function.
         }
   }
Run Code Online (Sandbox Code Playgroud)

现在当这个线程执行开始并且它在JNI级别上工作时我不担心,但是在某些情况下从其他类或方法我想停止这个JNI工作,所以我怎么能停止这个线程.

注意:这里我的线程也没有while循环所以我也无法检查一些全局标志变量.

所以有人知道如何在没有while循环的情况下调用任何JNI函数时杀死一个线程.

java java-native-interface multithreading android native

4
推荐指数
1
解决办法
3389
查看次数