想要创造优秀的游戏体验,你必须清楚你制作的游戏面向哪些群体,这个群体的玩家喜欢什么,不喜欢什么。如果你曾经是目标群体中的一员,那么在设计这个游戏的玩法时,你将会有巨大的优势。假如你正在为儿童设计一款教育类游戏,你可以回忆你在那个年龄所想的、所做的以及对人和事的看法。但是假如你不是目标群体的一员,你必...
分类:
其他好文 时间:
2014-05-01 11:23:20
阅读次数:
336
CreateThread、_beginthreadex和AfxBeginThread创建线程好几个函数可以使用,可是它们有什么区别,适用于什么情况呢?参考了一些资料,写得都挺好的,这里做一些摘抄和整合。【参考1】CreateThread,
AfxBeginThread,_beginthread, _...
分类:
其他好文 时间:
2014-05-01 11:20:01
阅读次数:
406
NIONIO与IO主要的区别区别见下表:IONIO面向流(输入流/输出流)面向缓冲区(各种缓冲区,除了布尔类型之外其他的基本数据类型都有缓冲区跟其对应)阻塞IO非阻塞IO无选择选择器流与缓冲区
IO面向流,NIO面向缓冲区,面向流意味着每次从流中读取一个字节或多个字节,直到把所有字节读完,没有缓冲....
分类:
编程语言 时间:
2014-05-01 10:55:05
阅读次数:
416
CountDownLatch
类是一个倒计时计数器,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数初始化
CountDownLatch。由于调用了countDown() 方法,所以在当前计数到达零之前,await
方法会一直受阻塞。之后,会释放所有等待的线程,aw...
分类:
编程语言 时间:
2014-05-01 08:21:22
阅读次数:
485
JDK1.5提供了Exchanger用于两个线程的数据交换。两个线程先后到达交换点,先到达的线程会等待后到达的线程,然后两个线程互相交换数据,交换后双方持对方的数据。Exchanger只提供了一个构造器:Exchanger():创建一个新的Exchanger。Exchanger中也只有两个方法:V
...
分类:
编程语言 时间:
2014-05-01 08:18:46
阅读次数:
455
vc基于对话框多线程编程实例——线程之间的通信实例:
分类:
编程语言 时间:
2014-05-01 08:16:04
阅读次数:
337
BufferBufferMark<=Position
<=Limt<=Capacity状态变量position:在从通道读取时,将所读取的数据放到底层的数组中。position变量跟踪已经写了多少数据。它指定了下一个字节将放到数组的哪一个元素中。因此,如果从通道中读三个字节到缓冲区中,那么缓冲区的p...
分类:
其他好文 时间:
2014-05-01 07:54:06
阅读次数:
326
正在学习《大型网站系统与JAVA中间件实践》,发现对BIO、NIO、AIO的概念很模糊,写一篇博客记录下来。先来说个银行取款的例子:同步 :
自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。异步 :
委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读...
分类:
编程语言 时间:
2014-05-01 07:46:32
阅读次数:
373
JDK1.5提供了阻塞队列接口BlockingQueue,它是一个有界阻塞队列。BlockingQueue实现是线程安全的,可以安全地与多个生产者和多个使用者一起使用。使用时用其实现类ArrayBlockingQueue,它一个由数组支持的有界阻塞队列。此队列按
FIFO(先进先出)原则对元素进行排...
分类:
编程语言 时间:
2014-05-01 06:58:46
阅读次数:
373
音频操作所需头文件和链接库#include#include#pragmacomment(lib,"winmm.lib")
由于音频采集过程是一个持续过程,所以建议为它们各自分配一个线程,而使用MFC的 CWinThread
类是一个不错的选择,笔者就是利用CWinThread类将这两个功能封装成了两...