上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 94 下一页
摘要: http://www.cnblogs.com/lgxqf/archive/2009/02/10/1387480.html在Win32 API中,创建线程的基本函数是CreateThread,而_beginthread(ex)是C++运行库的函数。为什么要有两个呢?因为C++运行库里面有一些函数使用了全局量,如果使用CreateThread的情况下使用这些C++运行库的函数,就会出现不安全的问题。而_beginthreadex为这些全局变量做了处理,使得每个线程都有一份独立的“全局”量。所以,如果你的编程只调用Win32 API/SDK,就放心用CreateThread;如果要用到C++运行时间 阅读全文
posted @ 2012-11-07 11:19 小 楼 一 夜 听 春 雨 阅读(423) 评论(0) 推荐(0)
摘要: TerminateThreadis a dangerous function that should only be used in the most extreme cases. You should callTerminateThreadonly if you know exactly what the target thread is doing, and you control all of the code that the target thread could possibly be running at the time of the termination. For exam 阅读全文
posted @ 2012-11-06 18:09 小 楼 一 夜 听 春 雨 阅读(3897) 评论(0) 推荐(0)
摘要: from:http://blog.csdn.net/fatacy/article/details/16230451.避免了select的查询,可以从socket直接定位到完成端口。想象同时上千个连接的程序中,别的模型里只能通过select的方式对所有的socket链接查询一次才能知道哪个socket上有事件;而完成端口模型中,一旦一个socket上有事件发生,它立即将事件组成一个完成包放入完成端口(实际上是个队列,放入完成端口的内部API是KeInsertQueue),这时等待线程直接从中取出该事件,如此即避免了一次查询。2.相对一个链接一个线程的模型,避免了大量线程切换,能够最大限度的利用C 阅读全文
posted @ 2012-11-06 18:00 小 楼 一 夜 听 春 雨 阅读(1015) 评论(0) 推荐(0)
摘要: http://www.cnblogs.com/dabaopku/archive/2012/01/09/2316772.html前言不要把这篇文章当做给编程人员的技术文章,即使你对编程一无所知,按照这篇文章的指引一步步学习,仔细模仿,也可以很容易地学会如何去做。更重要的是,这篇文章将让你介绍如何让git成为你的工作日志,成为你的备份工具,成为你的项目管理软件。没错,git让这一切变得如此简单。背景OK,什么是git? Wikipedia(http://en.wikipedia.org/wiki/Git_(software))告诉我们:“Git(/ɡɪt/) is adistributed rev 阅读全文
posted @ 2012-10-31 22:56 小 楼 一 夜 听 春 雨 阅读(459) 评论(0) 推荐(0)
摘要: FreeType2的简单使用:FreeType2是一个简单的跨平台的字体绘制引擎.目前支持TrueType Type1 Type2等字体格式.不过目前好象还不支持OpenType.使用FreeType的应用很多.著名的FTGL就是使用FreeType的.能在OpenGL高效率的绘制矢量字体.FTGL我没用过.因为不想在没了解该怎么用FreeType的情况下就去用FTGL.经过一个晚上的阅读代码(我的代码阅读能力是很差的).终于知道了如何使用FreeType2了。不过是简单的使用,还不知道如何设置Bold Itainly等属性.主要是简单的演示.以后准备做成一个完善的字体引擎.下面简单的介绍一下 阅读全文
posted @ 2012-10-30 22:47 小 楼 一 夜 听 春 雨 阅读(10327) 评论(1) 推荐(0)
摘要: 1. 在Create D3D资源的时候,使用V()宏是非常必要的,因为很多情况下,即使D3D 资源创建失败,他也会继续执行下去,如此以来,程序的bug的定位就麻烦了很多,而使用V()宏会在出错的地方及时停下来,当然也有不好的地方,因为宏定义本身使用了if语句,因此如果V()宏下方有else将会导致else匹配if时出错的问题。2. Pair函数成对使用,我把Create-Release,Begin-End等等函数称为Pair函数,更多的时候,这应该称为一种习惯,就像括号的匹配一样,前者容易导致内存泄露,而后者产生的bug就更加奇怪,例如release下结果正常,而debug模式下结果却比较奇怪 阅读全文
posted @ 2012-10-24 10:50 小 楼 一 夜 听 春 雨 阅读(1748) 评论(0) 推荐(0)
摘要: From the DXSDK DocumentationD3DFVF_XYZRHW - Vertex format includes the position of a transformed vertex. This flag cannot be used with the D3DFVF_XYZ or D3DFVF_NORMAL flags.D3DFVF_XYZW - Vertex format contains transformed and clipped (x, y, z, w) data. ProcessVertices does not invoke the clipper, in 阅读全文
posted @ 2012-10-24 09:19 小 楼 一 夜 听 春 雨 阅读(932) 评论(0) 推荐(0)
摘要: 游戏中接受到的消息那叫一个多如牛毛啊,这就涉及到switch case接受还是if else接受的效率问题有人说这是个小问题,哈哈 精益求精吗看到了一篇两者效率比较的文章:switch...case与if...else的根本区别在于,switch...case会生成一个跳转表来指示实际的case分支的地址,而这个跳转表的索引号与switch变量的值是相等的。从而,switch...case不用像if...else那样遍历条件分支直到命中条件,而只需访问对应索引号的表项从而到达定位分支的目的。具体地说,switch...case会生成一份大小(表项数)为最大case常量+1的跳表,程序首先判断s 阅读全文
posted @ 2012-10-18 17:49 小 楼 一 夜 听 春 雨 阅读(1179) 评论(0) 推荐(0)
摘要: 材质脚本material screen{ technique { pass { texture_unit { texture blueScreen.jpg } texture_unit { texture screen } } }}blueScreen.jpg必须是blank white的图像,因为多重纹理混合默认是modulate。。。text... 阅读全文
posted @ 2012-09-26 16:09 小 楼 一 夜 听 春 雨 阅读(1589) 评论(0) 推荐(0)
摘要: 头文件#include <Vfw.h>成员变量: // for avi; PGETFRAME Frame; BITMAPFILEHEADER BMPFileHeader; PAVIFILE aviFile; PAVISTREAM aviStream; AVISTREAMINFO aviStreamInfo; int m_nFrameNumber; BITMAPINFO* m_pBitMapInfo; BYTE* pData; int cy; int cx; HANDLE handle; //读取代码: AVIFileInit(); AVIFileOp... 阅读全文
posted @ 2012-09-25 12:47 小 楼 一 夜 听 春 雨 阅读(4364) 评论(0) 推荐(0)
上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 94 下一页