让我用这个小而简单的例子:
class Sample {
private String msg = null;
public void newmsg(String x){
msg = x;
}
public String getmsg(){
String temp = msg;
msg = null;
return temp;
}
}
让我们假设函数 newmsg()
是由其他线程调用的,我没有访问这些线程的权限。
我想使用 sync 方法来保证字符串 msg
每次只被一个函数使用。换句话说,函数 newmsg()
不能与 getmsg()
同时运行。