假设我有一个 Runnable,它执行一个简单的文件写入操作,并且这个 Runnable 被一个执行程序调用。
executor 是一个单线程的 Executor 类。
public void doThis() {
executor.execute(new Runnable() {
@Override
public void run() {
file.write(_data);
}
});
}
_data 的直接内容是否在调用 execute() 时被保存?这意味着一旦runnable被提交到队列中,我可以继续对_data进行更改,并且更改不会写入文件?
_data = something
doThis();
_data = something else
有没有机会我最终会做 file.write(别的)?