随笔分类 -  Windows 核心编程

摘要:概念:线程局部存储(Thread Local Storage,TLS)用来将数据与一个正在执行的指定线程关联起来。 进程中的全局变量与函数内定义的静态(static)变量,是各个线程都可以访问的共享变量。在一个线程修改的内存内容,对所有线程都生效。这是一个优点也是一个缺点。说它是优点,线程的数据交换变得非常快捷。说它是缺点,一个线程死掉了,其它线程也性命不保; 多个线程访问共享数据,需要昂贵的同... 阅读全文
posted @ 2010-11-03 11:14 tungli 阅读(24259) 评论(3) 推荐(5)
摘要:Interlocked API可以对在多线程之间共享的内存变量提供原子性访问。有些CPU在硬件层面上直接支持这些操作,如80386以后的X86架构CPU,xchg、xadd、cmpxchg等指令在进行内存访问时锁住总线。举例来说, InterlockedExchangeAdd在X86上的实现如下:LONG WINAPI InterlockedExchangeAdd(PLONG Addend, LO... 阅读全文
posted @ 2010-08-24 22:22 tungli 阅读(837) 评论(0) 推荐(0)