Позвольте мне использовать этот небольшой и простой пример:
class Sample {
private String msg = null;
public void newmsg(String x){
msg = x;
}
public String getmsg(){
String temp = msg;
msg = null;
return temp;
}
}
Предположим, что функция newmsg()
вызывается другими потоками, к которым у меня нет доступа.
Я хочу использовать метод synchonize, чтобы гарантировать, что строка msg
используется только одной функцией за время. Другими словами, функция newmsg()
не может работать одновременно с getmsg()
.