Предположим, у меня есть Runnable, который выполняет простую операцию записи файла, и этот Runnable вызывается с исполнителем.
С исполнителем, являющимся однопоточным классом Executor ..
public void doThis() {
executor.execute(new Runnable() {
@Override
public void run() {
file.write(_data);
}
});
}
сохраняется ли непосредственное содержимое _data в момент вызова execute ()? Что означает, что после того, как исполняемый файл был отправлен в очередь, я могу продолжить и внести изменения в _data, и эти изменения не будут записаны в файл?
_data = something
doThis();
_data = something else
есть ли вероятность, что я в конечном итоге буду выполнять file.write (что-то еще)?