Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在线程池中执行runnable时,给定线程不存在_Java_Android_Multithreading_Thread Safety - Fatal编程技术网

Java 在线程池中执行runnable时,给定线程不存在

Java 在线程池中执行runnable时,给定线程不存在,java,android,multithreading,thread-safety,Java,Android,Multithreading,Thread Safety,我的应用程序有以下问题: 为了在后台执行一些操作,我声明了一个ThreadPoolExecutor private static ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(5, 100, 100, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(100)); 但应用程序在这一点上崩溃了,它说: java.lang.IllegalArgume

我的应用程序有以下问题: 为了在后台执行一些操作,我声明了一个ThreadPoolExecutor

private static ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(5, 100,
         100, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(100));
但应用程序在这一点上崩溃了,它说:

java.lang.IllegalArgumentException: Given thread does not exist

代码有什么问题?谢谢

您的意思可能是
setThreadPriority
而不是
getThreadPriority

poolExecutor.execute (new Runnable() {
    public void run() {
        Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
         ...
    }

您可能是指
setThreadPriority
而不是
getThreadPriority

poolExecutor.execute (new Runnable() {
    public void run() {
        Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
         ...
    }

我认为
getThreadPriority
方法需要一个线程ID作为param,而您需要一个线程优先级。我认为
getThreadPriority
方法需要一个线程ID作为param,而您需要一个线程优先级。