12 minaiyi

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 48w+

socket编程中select的使用

Select在Socket编程中还是比较重要的,可是对于初学Socket的人来 说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式 block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用 Select就可以完成非阻塞(所谓非阻

2014-05-09 00:15:29

套接字Select I/O模型

select模型select(选择)模型是winsock中常见的I/O模型。之所以称其为“select模型”,是由于它的“中心思想”是利用select函数,实现对I/O的管理!最初设计该模型时,主要面向的是某些使用Unix操作系统的计算机,它们采用的是Berkeley套接字方案。select模型已经集成到Winsock1.1中。1.通过调用select函

2014-05-09 00:06:54

(VC代码) 端口复用的思路与实现

端口复用在黑客后门程序中十分重要,当你侵入一台服务器时,这台服务器如果安装了防火墙,则使用一般的后门程序时,后门程序使用的是防火墙禁止的端口,则可以通过复用防火墙允许的端口来与后门程序进行数据交流,比如一个服务器有WEB服务,我们可以通过复用80端口.原理图如下:        复制端口的原理是用在服务器安装一个中间程序,在客户端发送数据给端口前劫获

2014-05-08 18:54:28

线程安全:分配堆与内存 API:HeapCreate HeapAlloc HeapSize HeapFree HeapDestroy

/** 创建指定大小的堆*判断当前进程堆的个数*在指定的堆上分配内存*获取 堆分配的内存块的大小* 释放堆分配的内存*销毁HeapCreate 创建的堆*/#include#includeusing namespace std;void main(){ //定义变量 HANDLE hHeap; //堆句柄 SYSTEM_INFO si; //定

2014-05-08 00:46:50

使用GetProcessHeaps()和HeapValidate()函数定位缓存溢出

BOOL HeapValidate( HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem );其中hHeap为要检查的堆的句柄,dwFlags为标志,一般设置为0, lpMem如果为NULL就检查整个堆正确性,否则仅仅检查lpMem指向的内存块的有效性。函数返回TRUE表示堆或内存块有效,返回FALSE则表示状态已经被破坏。    但是仅仅有了这个

2014-05-08 00:43:34
勋章 我的勋章
    暂无奖章