![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
疯流人物
我是一个爱代码疯狂,为软件消得人憔悴的疯流人物
展开
-
PeekMessage和GetMessage函数的主要区别
转载 2014-05-06 16:25:18 · 671 阅读 · 0 评论 -
线程间如何进行消息传递
线程间如何进行消息传递 1) 定义消息ID #define WM_USER_MSG WM_USER+102 2) 创建线程 m_hThread = CreateThread(NULL, 0, Thread, 0, 0, &m_dwID); 3) 线程函数中使用GetMessage DWORD WINAPI Thread(LPVOID lpParameter) { w转载 2014-05-06 16:27:20 · 1209 阅读 · 0 评论 -
个人多线程程序设计经验总结
1.各线程的数据要分离开来,避免使用全局变量。 2.如果各线程一定要使用全局变量,哪么该全局变量一定要读写保护(临界区,互斥等技术)。 3.不要在线程之间共享GDI对象。 4.确定你知道你的线程状态,不要径自结束程序而不等待它们的结束; 5.让主线程处理用户界面(UI)。 6.千万不要在一个临界区中调用Sleep()或Wait..()API函数;不要长时间锁住一份资源转载 2014-05-06 16:28:31 · 548 阅读 · 0 评论 -
PostMessage与PostThreadMessage的区别
原文:http://topic.csdn.net/u/20100107/11/161c95f0-eec2-45fc-a433-f50ec725f09e.html PostMessage与PostThreadMessage的区别 帖子标题应改为PostMessage与PostThreadMessage的区别。消息队列是属于线程的,Post消息就是把消息放到目标线程的消息队列中。这转载 2014-05-06 16:26:17 · 1054 阅读 · 0 评论 -
操作系统核心对象与GDI对象
①核心对象(Kernel object):表现为HANDLE,它由KERNEL32.DLL管理。 .核心对象可以有一个以上的拥有者,甚至可以是跨进程的拥有者。 .每一个核心对象内部都有一个引用记数(refenrence count),当引用记数为0时,操作系统将销毁该核心对象(cleans up操作);CloseHandle()的唯一作用就是将引用记数减1. 它只存于下列转载 2014-05-06 16:29:43 · 742 阅读 · 0 评论 -
Java 线程池学习
最近因为工作需要,涉及到多线程的问题,顾在网上找了一些java线程池方面的文章学习,先从最基础的开始: 1中博主自己通过ThreadGroup实现一个线程池(挺方便理解的),使用的是jdk1.4版本,Jdk1.5版本以上提供了现成的线程池。 2]中介绍了java.util.concurrent.Executors类的API。 3]中介绍转载 2014-04-22 11:41:10 · 778 阅读 · 0 评论 -
Delphi多线程学习:多线程数据库查询(ADO)
ADO多线程数据库查询通常会出现3个问题: 1、CoInitialize 没有调用 (CoInitialize was not called);所以,在使用任何dbGo对象前,必须手 调用CoInitialize和CoUninitialize。调用CoInitialize失败会产生"CoInitialize was not called"例外。 2、画布不允许绘画 (Can转载 2014-08-15 10:02:08 · 1037 阅读 · 0 评论