1.在多线程下 ,synchronized 要配合 static 使用如下 ,或者使用 同步区 olock 对象 定义出 static 对象 例如:static object olock =new object();
/**
* 注册账户
* @param userid
* @param appid
* @return
* @throws Exception
* synchronized 修饰的方法 一定 static 修饰 否则失效,或者对象是单例对象
*/
public <span style="color:#FF0000;">static synchronized </span>ReturnData insterAccount(String userid ,String appid){
//<span style="color:#FF0000;">synchronized </span>(olock) {//多线程 同步锁一定是单例对象,否则synchronized 不起作用
AccountService as =new AccountService();
AccountInfo obj = as.selectByUserIdAndAppId(userid,appid);
if(obj!=null){
return new ReturnData(2101,"此用户已经注册过","");
}
return null
}