Dan*_*iel 1 java multithreading thread-safety threadpool
我想在大量数据上运行多线程程序.我通常创建一个可调用(或可运行)的类,并将进程所需的数据传递给类.
public class CallableTrainer implements Callable<PredictorResult> {
dataType data;
CallableTrainer( dataType massiveData ) {
this.data = massiveData;
}
@Override
public PredictorResult call() throws Exception {
// do something and return ...
}
}
Run Code Online (Sandbox Code Playgroud)
基于上面的实现,我假设总是为每个线程复制'massiveData'(对吗?)如果这是真的,我通过为每个线程复制这些数据来浪费大量内存.有没有办法在线程之间共享数据?