现有程序可以处理多用户同时访问的情况,怎样编写并发的测试程序,请大侠指导,最好有源码,谢谢
解决方案 »
- MFC CTabCtrl 控件问题?
- VC制作屏保
- C++算法里面const是什么意思?
- 使用 WSAAsyncSelect 可为何 OnClientMessage(WPARAM wParam,LPARAM lParm) 始终不运行呀??? 急
- 关于POP3验证的问题,看看我的做法有什么问题,在线等
- mlistcstr怎么取不到第一行数据?代码如下:
- 大家给点建议:
- help~~~~
- 如何知道打印机缓存已满或者是打印机正在打印的信心,在线等待
- MFC非规则DLL到出对话框类的导入问题
- 请各位大虾帮忙,我在哪里可以找到那个关于串口的控件,还有不知有没有关于并口编程的控件??十万火急,请各位赶快帮帮忙!!万分感谢!
- 如何在一个project内调用工程内的函数??
send();
}
但是处理速度非常慢,应用程序每接收一个请求就开一个线程,但跟踪时,却出现了,不应循环的地方反复执行,不知道是何原因,如果测试程序合理的话,看来我就要从其他方面找原因了
打开菜单VC->debug->Threads...你可以挂起不相关的线程
你可以先测试只有一个请求的情况,通过了,再测试同时发生的情况。
在应用程序中,为了测试多线程是否起作用,可以在线程函数中(我喜欢在结尾处)加一个Sleep(n)做测试。限制线程最大数量为1个,用定量的m个请求来测试时延,应该差不多为n*m;然后加大线程最大数量为10个或者其他,用定量的m个请求来测试,时延如果差不多为n*m/10,那就对了。
这个测试可以证明线程机制是否正确。
测试时要测试一下并发能力,测试进程最多200个线程,不行就多开进程或买机器,只有一个进程的测试意义不大,因为在你的程序死掉之前,测试程序已经趴下了,你的测试程序不会比正式开发的软件效率还高吧。
测试时还要注意对非法连接的防护力,最起码能有效对付connect之后什么都不干的线程
已经到了测试并发承受能力,可能已经不能用debug版本了。