跨线程可能引发的崩溃问题

跨线程引发的崩溃:

 

1.正常跨线程调用

a.跨线程造成死锁

b.跨线程释放内存

c.多线程并发访问(例如:进入一个界面时,该界面会同时发起三个异步请求操作。每个操作在发起数据请求时,都可能会调某一方法进行存取某一属性值)

d.线程本身有问题,调用此线程也会挂掉。(执行本段逻辑均会挂掉)

e.线程调用后未sleep,一直占用cpu,导致程序直接被杀死

f. 对公有变量的同时读或写。(当多个线程需要对公有变量进行写操作时,后一个线程往往会修改掉前一个线程存放的数据,从而使前一个线程的参数被修改;另外,当公用变量的读写操作是非原子性时,在不同的机器上,中断时间的不确定性,会导致数据在一个线程内的操作产生错误,从而产生莫名其妙的错误,而这种错误是程序员无法预知的)、

 

2.异常跨线程调用

同步锁出现问题(在不应该解锁的地方提前解锁,导致其他线程访问到此处的内容,引发了异常)



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章