• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
勿在浮沙筑高台
博客园 首页 新随笔 联系 订阅 订阅 管理

07 2012 档案

 
【Windows】线程漫谈——.NET线程同步之Interlocked和ReadWrite锁
摘要:摘要: 本系列意在记录Windwos线程的相关知识点,包括线程基础、线程调度、线程同步、TLS、线程池等。这篇来说说静态的Interlocked类和ReadWrite锁.NET中的InterlockedInterlocked的系列方法提供了对简单类型的原子操作(不会被打断的操作),因此这也是一种多线程共享变量,防止冲突争用的方法。比如下面的方法作用是以原子的方式递增整数i:int i = 0 ;Interlocked.Increment( ref i);除此之外还包括Add、Exchange、CompareExchange、Decrement、Read和其中的某些泛型版本。如果看官使用过win 阅读全文
posted @ 2012-07-24 08:08 P_Chou 阅读(5983) 评论(0) 推荐(2)
【Windows】线程漫谈——.NET线程同步之Monitor和lock
摘要:摘要: 本系列意在记录Windwos线程的相关知识点,包括线程基础、线程调度、线程同步、TLS、线程池等。从这篇开始,在线程同步的方法上,开始在.NET平台上做个总结,同时对比Windows原生的API方法。你可以发现其中的联系。.NET中的Monitor和lock相信很多看官早已对此十分熟悉了。本文作为总结性的文章,有一些篇幅将对比Monitor和关键段的关系。由于lock就是Monitor,所以先从Monitor说起,通常Monitor是像下面这样使用的:Monitor.Entry(lockObj);try{ // lockObj的同步区}catch(Exception e){ ... 阅读全文
posted @ 2012-07-18 13:55 P_Chou 阅读(4972) 评论(2) 推荐(0)
【Windows】线程漫谈——线程同步之信号量和互斥量
摘要:本系列意在记录Windwos线程的相关知识点,包括线程基础、线程调度、线程同步、TLS、线程池等信号量内核对象信号量内核对象用来进行资源计数,它包含一个使用计数、最大资源数、当前资源计数。最大资源数表示信号量可以控制的最大资源数量,当前资源数表示信号当前可用的资源数量。设想一个场景:需要开发一个服务器进程,最多同时运行5个线程来响应客户端请求,应该设计一个“线程池”。最开始的时候,5个线程都应该在等待状态,如果有一个客户端请求到来,那么唤醒其中的一个线程以处理客户端请求,如果同时的请求数量为5,那么5个线程将全部投入使用,再多的请求应该被放弃。也就是说,随着客户端请求的增加,当前资源计数随之递 阅读全文
posted @ 2012-07-13 20:27 P_Chou 阅读(6432) 评论(0) 推荐(1)
【Windows】线程漫谈——线程同步之计时器内核对象
摘要:本系列意在记录Windwos线程的相关知识点,包括线程基础、线程调度、线程同步、TLS、线程池等。可等待的计时器内核对象下面的函数CreateWaitableTimer用以创建一个计时器内核对象:HANDLE WINAPI CreateWaitableTimer( __in_opt LPSECURITY_ATTRIBUTES lpTimerAttributes, __in BOOL bManualReset, __in_opt LPCTSTR lpTimerName);第一和第三个参数与内核对象的共有特性有关,与线程同步无关,这里不再阐述,通常传入NULL即可。参数bMan... 阅读全文
posted @ 2012-07-07 20:39 P_Chou 阅读(2825) 评论(0) 推荐(1)
【Windows】线程漫谈——线程同步之等待函数和事件内核对象
摘要:本系列意在记录Windwos线程的相关知识点,包括线程基础、线程调度、线程同步、TLS、线程池等。用内核对象进行线程同步内核对象:Windows操作系统使用内核对象来管理进程、线程、文件等诸多种类的大量资源。内核对象的创建通常是通过Windows API,比如CreateThread将创建一个线程内核对象,并返回一个内核对象句柄。内核对象实际上是一小块内存,其中包括了引用计数、安全性描述等信息,操作系统通过这一小段内存来管理对应的内核资源。内核对象的实际内存地址并非句柄所展示的,它们在进程内的内核对象句柄表中有映射。在前几篇中,介绍了在用户模式下的线程同步机制:InterLocked系列、关键 阅读全文
posted @ 2012-07-03 08:44 P_Chou 阅读(5721) 评论(5) 推荐(5)
 

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3