多线程
文章平均质量分 79
windcsn
这个作者很懒,什么都没留下…
展开
-
多线程WIN32程序如何检查死锁(一)——死锁概述
数据毁坏或一个死锁几乎是一个多线程应用中发生的最坏的问题,它具有非常恶毒的和敏感的形式但相当困难重新或者被跟踪。由于这种原因,强烈推荐你在这些情况发生之前分析你的多线程应用程序可能的死锁条件并检查和删除这些死锁。非常简单一个死锁两个或多个线程彼此等待对方释放共享资源而不释放它占有的资源。因为所有参与死锁的线程被挂起并且因此而不能释放它们占有的资源,没有线程可以继续运行,并且整个应用程序(或者更坏的原创 2005-09-05 16:31:00 · 2423 阅读 · 0 评论 -
多线程WIN32程序如何检查死锁(二)-检查死锁的策略
多线程应用程序中检查死锁的方法 WIN32 API的好的特性就是能够让你所有可能引起死锁的资源。在上面的WINDOWS3.1的例子中,硬盘驱动器制造商,应用程序员,WINDOWS开发人员都不可能预测到死锁,因为这个死锁包含了几个软件部分,而且软件内部的功能对其他部分的作者来说是未知的,但如果把他们放在一起,他们就能够让系统挂起。 然而在WIN32 API中,所有的同步对象只能在本地工作,也就是说,原创 2005-09-12 10:14:00 · 2044 阅读 · 0 评论 -
多线程环境下怎么样确定代码的执行时间
你想知道你的代码究竟执行了多长时间吗?是的,有的时候我们需要确定我们的代码到底执行了多长时间。或许你会想这有何难,在代码的前后增加GetTickCount来得到时间不就可以了吗?没错,如果系统是线形执行的话,这样做肯定可以得到,但我们怎么能够保证系统是线形的来?我们这里只讨论WINDOWS,WINDOWS是典型的多线程、抢占式的多任务操作系统。如果你的计算机只有一块CPU的话,那么你的应用程序是这原创 2005-09-13 13:32:00 · 4548 阅读 · 2 评论 -
多线程WIN32程序如何检查死锁(三)-使用Petri网络来表示多线程应用程序
根据1993版的《计算机百科全数》,Carl Adam Petri一个在德国波恩为Gesellschaft fuer Mathematik und Datenverarbeitung工作,我花了很长时间猜测为什么他的理论并没有引起当时学术和工商界的本来应得的注意。Petri网络早在19世纪70年代就已经深入的研究过,以我浅见,他们提供了一个分析和研究并发系统优秀的架构,对于Petri网络的最好的和原创 2005-09-20 14:00:00 · 2849 阅读 · 0 评论