【发布时间】:2021-09-08 00:26:42
【问题描述】:
在 Java 中是否可以确保变量的“读取”将给出由同一线程完全写入该变量的值(在多个并发“写入”操作的情况下)?
public class Client {
private Config config;
private RestClient client;
public void makeRequest() {
client.post(config.getUrl(), requestEntity);
}
public void setConfig(Config config) {
this.config = config;
}
}
我想确保' config.getUrl() '会给我准确的最后一个值('config'对象'的'url'变量)由同一线程前一段时间( config.setUrl(" someUrl") '发生在' config.getUrl() 在同一个线程中)。
但是有可能其他线程会同时调用config.setUrl("someOtherUrl")..
【问题讨论】:
标签: java multithreading concurrency