博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TryEnterCriticalSection
阅读量:7061 次
发布时间:2019-06-28

本文共 583 字,大约阅读时间需要 1 分钟。

if (TryEnterCriticalSection(&g_cs) == FALSE){返回}else{进入临界区LeaveCriticalSection(&g_cs);}

如果EnterCriticalSection将一个线程置于等待状态,那么该线程在很长时间内就不能再次被调度。实际上,在编写得不好的应用程序中,该线程永远不会再次被赋予CPU时间。TryEnterCriticalSection函数决不允许调用线程进入等待状态。它的返回值能够指明调用线程是否能够获得对资源的访问权。TryEnterCriticalSection发现该资源已经被另一个线程访问,它就返回FALSE。在其他所有情况下,它均返回TRUE。运用这个函数,线程能够迅速查看它是否可以访问某个共享资源,如果不能访问,那么它可以继续执行某些其他操作,而不必进行等待。如果TryEnterCriticalSection函数确实返回了TRUE,那么CRITICAL_SECTION的成员变量已经更新。Windows98没有可以使用的TryEnterCriticalSection函数的实现代码。

 

EnterCriticalSection 和 TryEnterCriticalSection

转载于:https://www.cnblogs.com/marklove/p/10980188.html

你可能感兴趣的文章
刘兰芝_百度百科
查看>>
C/C++产生随机数
查看>>
Android ProgressBar的使用
查看>>
jquery 新建的元素事件绑定问题
查看>>
最新版的Android4.4.2 SDK无法下载解决
查看>>
c fopen
查看>>
Linux 小知识翻译 - 「Linux」和「发行版」之间的关系
查看>>
FBX导入错误 :ImportFBX Errors:
查看>>
《设计模式》工厂家族
查看>>
自定义View,随着手指运动的小球
查看>>
Activity生命周期函数、onSaveInstanceState()和onRestoreInstanceState()的介绍
查看>>
分表处理设计思想和实现[转载]
查看>>
iOS开发UI篇—popoverController简单介绍
查看>>
一个简单的小例子让你明白c#中的委托-终于懂了!
查看>>
SQLServer 2008中SQL增强之三 Merge(在一条语句中使用
查看>>
对依赖倒置原则(DIP)及Ioc、DI、Ioc容器的一些理解
查看>>
SQL 建立临时表进行查询
查看>>
hdu------(3549)Flow Problem(最大流(水体))
查看>>
内存基础知识
查看>>
Bootstrap小体验
查看>>