- 博客(11)
- 资源 (7)
- 收藏
- 关注
转载 使用VC实现一个“智能”自增减线程池
工作中接手了一款产品的改造。因为该产品可能使用很多线程,所以产品中使用了线程池。(转载请指明来自BreakSoftware的CSDN博客) 线程池的一个优点是降低线程创建和销毁的频率;缺点是可能在比较闲的时候还存在一定数量的空闲线程。这个也可以比作现实生活中的武器,对于一款武器,有其攻击的能力和防御的能力。有些设计可能会将攻击力做的很强但是防御力有所折扣,有些可能防御做的很好
2013-06-16 12:02:51 672
原创 (一)关于线程安全问题的想法:CString
CString实现的机制. CString是通过“引用”来管理串的,“引用”这个词我相信大家并不陌生,象Window内核对象、COM对象等都是通过引用来实现的。而CString也是通过这样的机制来管理分配的内存块。实际上CString对象只有一个指针成员变量,所以任何CS
2011-09-07 16:21:53 1171
原创 使用vector和类模板存放mysql查询结果集,方便管理
由于需要使用mysql数据库查询操作,并对操作进行封装,发现不好对结果进行统一操作,所以自己封装一个存储数据的类模板 #include using std::string;//类用来存储获取到的单行数据template class row_data{
2011-09-02 16:51:23 1028
转载 linux下eclipse添加链接库
(转载地址http://blog.sina.com.cn/s/blog_554240170100u8sr.html)Linux中也有类似windows中DLL的变成方法,只不过名称不同而已。在Linux中,动态链接叫做Standard Object,生成的动态链接文件为*.s
2011-08-17 10:45:51 2465
原创 Linux多线程编程初步
1、Process (进程)进程,是管理程序运行的资源。(Process is container of the memory and resoures of the program)。每个进程至少拥有一个线程(任务)来执行程序。2、 Thread (线程)
2011-08-16 17:38:50 547
原创 通过TCP/IP方式连接 “不能上到 mysqL 服务器连接 ”解决方法
1、确认已有账户权限,可以登录mysql,不如可以使用以下语句添加账户、密码和权限 INSERT INTO `user` VALUES ('%','admin',PASSWORD('123456'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'
2011-07-13 15:13:49 2415
原创 关于程序开机自启动,无法启动同一目录其它程序的处理
开机自启动程序无法启动其它程序,进程默认目录问题 程序快修改好的时候,碰到一个问题:程序正常启动,可以使用CreateProcess启动相同目录的其它程序;可是让程序开机启动时,无法启动需要的程序,尴尬!!!createprocess返回值也是正常的,郁闷了。由于不是很急,偶尔修改一下这块代码,过了好多天发现还是不行,囧! 找了一些资
2011-06-13 21:50:00 984
转载 (转)malloc、new等是线程不安全的疑问??(优化完成端口)
首先声明,此帖为错误帖,希望大家能作为反例来看。转帖目的:为了完善基于完成端口的服务端稳定设计。当时,就是因为加入的是单线程运行时库,导致new和delete操作出错。后来,在看书的过程中,才知道,windows中,堆是属于进程的,当多个线程对堆进行操作时,是需要加锁的,如果导入的是多线程运行时库,那么,在new和delete时,是加锁来操作的。以后,我将向大家介绍windows的内存管理机制。这段时间正在做一个模块,总是出错,提示指令引用的内存不能为“read”或“written”。逐个排查错误,最终,发
2011-04-12 20:25:00 1468
原创 查询文件版本【exe文件】经测试可用
IS_GetAppVersion(char * AppName){ CString AppVersion; //AppVersion=IS_GetAppCreateTime(AppName); DWORD RessourceVersionInfoSize; DWORD JustAJunkVariabel; char* VersionInfoPtr; char* InformationPtr; UINT VersionInfoSi
2011-01-12 20:05:00 487
原创 在客户区画光标按钮
<br />StdAfx.h<br />在#if _MSC_VER > 1000之前<br />添加#define WINVER 0x0500<br /> <br /> CClientDC dc(this);<br /> CURSORINFO pci;<br /> pci.cbSize = sizeof(CURSORINFO);<br /> pci.flags =CURSOR_SHOWING;<br /> GetCursorInfo(&pci);<br /> CPoint pt = pci.ptScree
2010-12-02 00:30:00 529
原创 关于函数指针用于类成员函数
关于函数指针一般使用就不多说了,直接给个通用类型:typedef 返回类型(*新类型)(参数表) 而在类中使用 通用类型是 typedef 返回类型(类名::*新类型)(参数表) 以下是个人使用的例子,结构体内放 类指针、函数(即任务),主要是因为刚刚开始使用线程池,通过postthreadmessage向线程发送任务,lparam里面放结构体指针。使用线程池不是很熟悉,练一下手;结果碰到函数指针问题,就找了一些资料,发现很多网上例子编译有问题。就将个人使用的例子写了一个,希望有人用
2010-11-17 22:41:00 585
VC++ 6.0点击-'打开'-出错的解决办法
2010-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人