谁能举一个不用volatile修饰会出错的代码
我知道volatile的作用,但没法自己写一个来证明,谁能举一个不用volatile修饰会出错的代码?
程序代码:<form name="ctl00" action="regist.action" id="f">
<table class="tab_login">
<tr>
<td valign="top" class="w1">
请填写您的Email地址:
</td>
<td>
<input name="user.email" type="text" id="txtEmail"
class="text_input" onblur="checkEmail()" />
<div class="text_left" id="emailValidMsg">
<p>
请填写有效的Email地址,在下一步中您将用此邮箱接收验证邮件。
</p>
<span id="email.info" style="color:red"> <s:fielderror>
<s:param>emailErr</s:param>
</s:fielderror> </span>
</div>
</td>
</tr>
<from>通过form中的action指定到xml配置中,转到相应的Action java类
程序代码:public void validate() {
UserDAO userDAO = DAOFactory.getUserDAO();
try {
//user对象是从页面传过来的,在类中直接定义就能接收,要有get set方法
//通过传过来的user对象得到用户注册用邮箱,再去数据库中查找,看是否已经存在
User u = userDAO.findByEmail(user.getEmail());
if (u != null) {
log.info("邮箱已存在!");//可有可无
this.addFieldError("emailErr", "邮箱已存在!");
return;
}
} catch (Exception e) {
e.printStackTrace();
}
}在类中放入的emailErr最后会在jsp页面中的emailErr位置出现。
程序代码:
volatile boolean foo;
...
public void method() {
while (!foo) {
// do stuff
}
}