多线程的一些概念

来源:互联网 发布:凯驰吸尘器 知乎 编辑:程序博客网 时间:2024/05/22 02:04

多任务多线程时可能会发生死锁。

死锁:发生在两个线程对一对同步对象有循环依赖关系时。

         假如一个线程进入了对象X的管程,而另一个线程进入了对象Y的管程。如果X的线程试图调用Y的同步方法,它将像预料的一样被锁定,因为Y现在被另一个线程占用了。而Y的线程同样希望调用X的一些同步方法,线程永远等待。

同步:当两个或两个以上的线程需要同享资源,它们需要某种方法来确定资源在某一刻仅被一个线程占用,达到这一目的的过程叫做同步。管程(信号量)是一个互斥独占锁定的对象,又叫互斥体。

异步:当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程。

 

0 0