1、什么是進程
比如:QQ、QQ游戲、eclipse都是進程,可以通過任務管理器查看進程
2、進程和線程區別
線程是進程的一部分,一個進程可以包含多個線程,一個線程只能屬于一個進程
多線程與高并發。進程是所有線程的集合,一個線程是進程中的一條執行路徑
3、多線程的好處
多線程的好處就是提高程序的效率
4、多線程的應用場景
迅雷下載視頻、QQ同時和多人聊天、批量發送短信,批量上傳資源
多線程程序。5、使用繼承Thread類還是使用實現Runnable接口好?
使用實現Runnable接口好,原因是接口可以實現多個,類只能繼承一個,實現了Runnable接口還可以繼承其它的類,繼承了Thread類就不能再繼承其它的類,一般情況下使用線程池方便管理,避免浪費資源。
6、啟動線程是使用start方法還是run方法?
run方法相當于調用重寫后的run方法,而不是去開啟一個線程
7、多線程創建方式
線程并發。繼承Thread、實現Runnable接口、匿名內部類
8、什么是java內存模型
就是多個線程訪問同一變量的時候保證一致性
9、使用wait和sleep區別
wait:調用wait方法,當前線程釋放鎖,并且必須要調用notify才能重新變為阻塞
線程是。sleep:調用sleep不會釋放當前鎖,當前線程會等待sleep時間到達,繼續執行
10、Lock與synchronized的區別
Lock鎖是JDK1.5之后推出的并發包里面的關鍵字,Lock鎖可以人為的釋放鎖(相當于汽車中的手動擋)
synchronized當線程執行完畢或者拋出異常的話,鎖自動釋放(相當于汽車中的自動擋)
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态