高效线程使用圣典
严格来讲,线程的系统开销很大。系统必须为线程分配并初始化一个线程内核对象,还必须为每个线程保留1MB的地址空间(按需提交)用于线程的用
户模式堆栈,分配12KB左右的地址空间用于线程的内核模式堆栈。然后,紧接着线程创建后,Windows调用进程中每个DLL都有的一个函数来通知进程....
分类:
编程语言 时间:
2014-05-23 10:25:32
阅读次数:
399
【迷宫问题】
【算法1---堆栈回溯】
计算机解迷宫时,通常用的是"试探和回溯"的方法,即从入口出发,顺某一方向向前探索,若能走通,则继续往前走;否则沿原路退回,换一个方向再继续探索,直至所有可能的通路都探索到为止,如果所有可能的通路都试探过,还是不能走到终点,那就说明该迷宫不存在从起点到终点的通道。
1.从入口进入迷宫之后,不管在迷宫的哪一个位置上,都是先往东走,如果走得通...
分类:
其他好文 时间:
2014-05-22 13:25:23
阅读次数:
283
OpenGL中的投影使用
在OpenGL中,投影矩阵指定了可视区域的大小和形状。对于正投影与透视投影这两种不同的投影类型,它们分别有各自的用途。
正投影
它适用于2D图形,如文本、建筑绘图等。在它的应用场合,我们希望在屏幕上展示准确的物体大小和度量。
透视投影
它使用透视除法,对距离观察者较远的物体...
分类:
其他好文 时间:
2014-05-22 09:19:20
阅读次数:
280
return 和 exit 的区别
exit() 表示结束当前进程或当前程序,在整个程序中,只要有
exit,就退出,并将应用程序的一个状态返回给OS。一般
和操作系统相关的是0为正常退出,非0为非正常退出。
return: 表示调用堆栈的返回。例如当程序进入函数调用时,当函数
...
分类:
其他好文 时间:
2014-05-22 06:22:02
阅读次数:
258
1.预备知识
1.关于栈,在windows里面的堆栈其实很简单,当学了才知道哈,呵呵,第一要记住的是windows里面的栈是向低地址生长的(extended,延伸,呵呵,顺便丰富下英语的单词量,确实是少的可怜),你可以这样认为,栈就像是一个倒立的箱子,箱子的口子是向下的,底是向上的,这里就表明了系统栈的分布也是延伸方向是由高地址向低地址extended,在最初的...
分类:
其他好文 时间:
2014-05-20 13:49:05
阅读次数:
399
转自:http://www.cnblogs.com/ypchenry/p/3668572.html1.gdb的原理熟悉linux的同学面试官会问你用过gdb么?那好用过,知道gdb是怎么工作的么?然后直接傻眼。。。
gdb是怎么接管一个进程?并且能获取这个进程的变量、堆栈、寄存器、内存映像等信息的呢...
分类:
数据库 时间:
2014-05-18 20:06:56
阅读次数:
471
今天运行了一个比较大的程序,处理的数据达到126MB数据,将数据导入数据库中,用eclipse 来访问时候,总是出现java.lang.OutOfMemoryError:Java heap space的错误,上网查了一些资料,原来是堆栈溢出的状况,eclipse默认的情况下,堆栈的空间应该是64MB, 所以有时候处理的数据的时候,容易出现堆栈溢出的情况,下面总结了几种方法,解决这个问题。
...
分类:
编程语言 时间:
2014-05-18 15:53:30
阅读次数:
274
在51单片机中,不能直接修改PC,但有一种方法是可以改变PC的。函数调用里会把PC值压入堆栈中,调用结束后,会把PC值弹出到PC中。...
分类:
其他好文 时间:
2014-05-18 09:19:59
阅读次数:
221
#include
#define MAX_TASKS 2 //任务槽个数.必须和实际任务数一至
#define MAX_TASK_DEP 12 //最大栈深.最低不得少于2 个,保守值为12.
unsigned char idata task_stack[MAX_TASKS][MAX_TASK_DEP];//任务堆栈.
unsigned char idata task_sp[MA...
分类:
其他好文 时间:
2014-05-18 05:12:43
阅读次数:
339
在这之前,你要知道Task就是一个堆栈,栈顶的activity就是当前显示的activity,启动一个新的activity的时,一般直接压入堆栈,并成为当前运行的activity,前一个activity仍然在堆栈中,按下back键时,当前activity出栈,而前一个恢复为当前运行的activity...
分类:
其他好文 时间:
2014-05-16 00:40:58
阅读次数:
521