符合中小企业对网站设计、功能常规化式的企业展示型网站建设
本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...
商城网站建设因基本功能的需求不同费用上面也有很大的差别...
手机微信网站开发、微信官网、微信商城网站...
线程阻塞了,开启新线程执行你的操作。不要在主线程中执行耗时操作
创新互联专注于中大型企业的成都网站建设、网站制作和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户千余家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注成都品牌网站建设和互联网程序开发,在前进的路上,与客户一起成长!
代码很有意思 我反而学到了不少
已经知道问题在于这个方法numCheck
实际上是考虑多了 既然用户改变了textField才会触发事件
那么 我们就没必要去再次改变textField的内容了
因此textValueChanged事件中不需要去做setText的方法
你的程序在else中那一句注释掉就行了
else中什么都不做的
private int numCheck(TextField tf_temp,String num) {
int i = 0;
while(num.matches("0+\\d+")){
num = num.substring(1);
}
try{
i = Integer.parseInt(num);
//tf_temp.setText(num);
if(i255){ //这个最多只会发生一次不会发生死循环;
i = 255;
num = "255";
tf_temp.setText(num);
System.out.println(i);
}else {
//tf_temp.setText(num); //死循环。setText触发了TextvalueChanged()检查发现小于255,这个else又成立,这样死循环;
System.out.println(i);
}
}catch(NumberFormatException e){
alertDialog.setVisible(true);
tf_temp.setText("255");
e.printStackTrace();
}
return i;
}
代码与你的电脑系统不兼容。
建议你用PHP的来做。
win7 64位。
你这个不是死锁,就是flag的判断有问题,每个线程都是自己把自己锁住了,当flag为true时,看以下两段代码:
public synchronized void set(String name) {
if (flag)
try {
wait();
public synchronized void out() {
if (flag)
try {
wait();
两个线程都在wait,当然卡住不动了。
看你的代码,把set那段改成这样应该就好了:
public synchronized void set(String name) {
if (!flag)
try {
wait();
jta1.append("服务器已为此客户端建立线程:Client"+clientNo+"/n当前时间为"+ dd.format(new Dateand.old()));