Rumah > Soal Jawab > teks badan
Saya membaca tentang isu pemantauan semula benang
http://www.cnblogs.com/ae6623...
Mod pemerhati yang diperkenalkan dalam artikel ini, saya rasa ia meletakkan kod utama untuk memulakan semula benang ke dalam badan benang Apa patutkah saya lakukan jika terdapat pengecualian yang tidak ditangkap dalam blok tangkapan? Saya tidak tahu banyak tentang kelas Pengecualian Bolehkah semua pengecualian ditangkap?
漂亮男人2017-05-27 17:43:04
Exception
ialah kelas induk bagi semua kelas pengecualian, catch(Exception)
boleh menangkap semua pengecualianException
是所有异常类的父类, catch(Exception)
能捕获到所有的异常
通常异常又分为Exception
和RuntimeException
Exception
必须捕获, 发生异常时, 会执行catch
中的业务
RuntimeException
, 发生异常时, 如果不捕获会中断当前线程, 如果捕获和Exception
一样
通常线程退出(死亡)的条件
线程业务执行完毕
线程发生未捕获的RuntimeException
你给的文章中重启线程的本质是让上一个线程A
已经结束了(break
), 调用Observable#notifyObservers()
重新启动了一个线程A1
,也就是说如果没有调用Observable#notifyObservers()
的话, 是不会重启线程的.
所以, 如果在调用Observable#notifyObservers()
之前发生了RuntimeException
Exception
dan RuntimeException
#🎜🎜#
Exception
mesti ditangkap Apabila pengecualian berlaku, perniagaan dalam catch
akan dilaksanakan #🎜🎜#RuntimeException
, apabila pengecualian berlaku, jika ia tidak ditangkap, urutan semasa akan terganggu Jika ditangkap, ia adalah sama dengan Exception
#🎜🎜#RuntimeException
#🎜🎜#A
telah tamat (break
) dan memanggil Observable#notifyObservers( )< /code>Memulakan semula urutan A1
, yang bermaksud bahawa jika Observable#notifyObservers()
tidak dipanggil, thread tidak akan dimulakan semula #🎜🎜#.
#🎜🎜#Jadi, jika RuntimeException
berlaku sebelum memanggil Observable#notifyObservers()
dan ia tidak ditangkap, urutan tidak akan dimulakan semula.#🎜🎜#balas0
PHP中文网2017-05-27 17:43:04
Secara amnya, lokasi di mana pengecualian benang yang diperhatikan berlaku boleh ditentukan, pengecualian ditangkap di lokasi yang ditentukan dan benang dimulakan semula. Kaedah pemprosesan sambungan subjek boleh dilaksanakan.