免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6152 | 回复: 12
打印 上一主题 下一主题

[C] Linux 调用 .so 库的效率问题  关闭 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-30 13:41 |只看该作者 |倒序浏览
Linux下写了个服务器程序,服务器启动时就装载了个.so,用来处理某些数据。现在的问题是,如果客户端来的数据是服务器程序直接处理的话,很快很快非常快客户端就能收到回复。但是如果是服务器程序不能处理,然后提交给.so的函数处理的数据,就需要等10秒左右客户端才能收到回复,即使.so的函数啥都不作,只是简单地发一个包回去,也是如此。而且不止是第一次调用.so的函数会这样,而是每次都这样。

是不是Linux调用.so函数的效率问题。

论坛徽章:
0
2 [报告]
发表于 2008-01-30 13:43 |只看该作者
延迟这么大,应该不是使用动态库的问题吧。

论坛徽章:
0
3 [报告]
发表于 2008-01-30 13:46 |只看该作者
  strace 一下看哪一步卡住了10秒吧

论坛徽章:
0
4 [报告]
发表于 2008-01-30 13:54 |只看该作者
要是linux调用so的效率有那么低,那你printf一下恐怕也得等10秒了.

论坛徽章:
0
5 [报告]
发表于 2008-01-30 14:11 |只看该作者
不大可能是动态库的问题,我一直都是把自己写的工具函数都封装在动态库中。一直都没有过这样的问题呀!我觉得应该是你的莫个函数的写的有问题!

论坛徽章:
0
6 [报告]
发表于 2008-01-30 14:14 |只看该作者
找到了,原来是之前为了调试加了sleep(10);难怪每次都是10秒……惭愧……

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
7 [报告]
发表于 2008-01-30 18:32 |只看该作者

回复 #6 beilian 的帖子

论坛徽章:
0
8 [报告]
发表于 2008-01-31 11:09 |只看该作者

论坛徽章:
0
9 [报告]
发表于 2008-01-31 14:42 |只看该作者

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
10 [报告]
发表于 2008-01-31 14:53 |只看该作者
原帖由 beilian 于 2008-1-30 13:41 发表
Linux下写了个服务器程序,服务器启动时就装载了个.so,用来处理某些数据。现在的问题是,如果客户端来的数据是服务器程序直接处理的话,很快很快非常快客户端就能收到回复。但是如果是服务器程序不能处理,然后 ...

如果每次都是十秒左右的话,
建议你 grep -r sleep . 看看有什么收获。
更大胆的做法是 grep -r 'sleep(10)' .  ……
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP