java - 我们可以有一个弱线程吗?

use*_*019 5 java multithreading weak-references

我们可以对正在运行的线程进行弱引用,以便在低性能CPU中终止吗?

我的意思是,做这样的工作吗?

WeakReference<Thread> ref = new WeakReference<Thread>(new Thread(){
    public void run(){
        while(true){ /* your code */ }
    }
});
Run Code Online (Sandbox Code Playgroud)

这样,我想要一个线程具有低优先级来执行,我的意思是当CPU性能为低并且CPU完全使用时,线程的执行会自动终止.

有些线程不具有高优先级,应该以低CPU性能中断和终止.

vsm*_*kov 1

您需要使用线程优先级来实现您的目标。

弱引用的想法是允许更早的垃圾收集。但对于线程来说,使用它是没有意义的,因为线程本身是 gc root,不会在RUNNING状态下被垃圾收集。