为什么此代码会使应用程序崩溃并迫使我关闭它? 由于某种原因它不断崩溃 我不明白为什么,但是此代码应用于了解线程
public class ThreadE extends Activity implements OnClickListener {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button button = new Button(this);
button.setText("Do Time Consuming task!");
setContentView(button);
button.setOnClickListener(this);}
public void onClick(View v) {
try {
for(int i=0; i<10; i++) {
System.out.println(i);
Thread.sleep(10000);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:2)
此类正在扩展Activity,这意味着它将位于主(UI)线程上。问题是使用以下代码进行调用: [[Thread.sleep(10000)]] 它将阻塞主线程10秒钟,我们绝不应该阻塞主线程 尝试从Thread或AsyncTask继承