记录
sixsavage
这个作者很懒,什么都没留下…
展开
-
要命的-lpthread
事件1:移植Red Hat Linux平台某电信服务器服务端接口程度到HPUX时间:2007年某日某早该程序的服务线程池由ACE_TASK的实现,在收到客户请求时会唤醒相应的线程处理业务。当我在HPUX启动程序的时候,发现ACE_TASK的activate函数调用失败。辗转反侧,不知所谓。自己做了一个测试程序,简单到只有ACE_TASK的一个类,实例对象,生成线程,错。 事件原创 2007-05-31 15:20:00 · 3643 阅读 · 0 评论 -
unix shell 循环
电信测试又开始了,有很多测试用例,会发多次同样的请求包。如若用测试工具一条一条的发太麻烦,就用shell写一个临时的工具:x=1while [ $x -le $2 ] do g4 $1 let x=x+1done用着挺爽。原创 2008-04-17 12:30:00 · 734 阅读 · 0 评论 -
查看程序依赖的sl:ldd
电信测试继续进行,几个兄弟在电信测试环境想用用我在开发环境做测试用的模拟器, 好吧,我帮你们ftp过来。再电信环境执行,嗯,提示有一个库libstdc++.sl.6找不到,没问题,从开发环境又ftp一个库过来,执行,还是提示找不到,又查看环境变量,LD_LIBRARY_PATH配置正确,又查看libstdc++.sl.6属性,有执行权限,小郁闷了半天。突然想起通过ldd可以查看开发环境这个程序的依原创 2008-04-17 12:45:00 · 773 阅读 · 0 评论 -
单线程程序转为多线程
说起来,单线程程序转为多线程,需要注意的事情很多,比如,对全局变量的同步处理,函数的去静态变量...这次遇到的就是具有静态属性的函数问题。项目最开始的时候我们认为所有的并行工作都用多进程来实现了,为了所作的数据访问层足够的快,我们选择了不明智的不支持多线程的编程方式,完成了大量的数据库访问函数。“访问句柄是全局的,函数中随地可以见到静态变量。”...没想到报应来的如此快,某一个功能模块,需要由单线原创 2008-09-07 11:00:00 · 3328 阅读 · 0 评论 -
线程处理完成,如何立即释放线程?
某时之前,我认为在unix下面所谓释放线程,就是在线程处理函数完成退出。因此线程程序就如下了:#include #include void * func(void * arg){ pthread_exit(0); return 0;}int main(int argc, char ** argv){ pthread_t pt_id; if(0 != pthread_crea原创 2008-10-28 10:50:00 · 6434 阅读 · 0 评论 -
查看使用某个端口的程序
10月7日早上,Mu很早就把我从床上拽下来,“我的接口机程序起不来了!!”我试了试,程序无法启动,日志显示socket::bind报错,无法绑定指定端口。我于是用netstat试了试:[ismap530@mdms ismap530]$ netstat -na | grep 18893tcp 0 0 10.2.0.191:18893 10.2.0.191:18893 ESTABLISHED“哦,有程序占用了端口,还是一个客户端程序。”“怎么查看占用某端口的进程?”我马上原创 2010-10-07 11:31:00 · 757 阅读 · 0 评论