游客:
注册
|
登录
|
帮助
Linux伊甸园论坛
»
C/C++ (STL/boost)
» 请问:c++程序在windows与liunx运行时间的差距?
IBM 集群技术资源全面接触
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: 请问:c++程序在windows与liunx运行时间的差距?
kadywang
新生入学
UID 220653
精华 0
积分 10(
积分有什么用?
)
帖子 2
阅读权限 10
注册 2007-12-28
状态 离线
#1
使用道具
发表于 2007-12-29 16:15
资料
个人空间
短消息
加为好友
请问:c++程序在windows与liunx运行时间的差距?
同一段程序在windows与linux下运行时间相差较大(我用的g++编绎),不知为什么?反而在liunx下运行时间很长(能出计算结果)。
Ni2WMmti@P
初次在liunx下运行程序,所以请教:在将生成数据写入磁盘时,用得是fwrite,而不是 ofstream, 是由这个造成运行时间增加吗?还有别的原因吗,请帮我分析一下。程序上我该如何改写?非常感谢了!
kadywang
新生入学
UID 220653
精华 0
积分 10(
积分有什么用?
)
帖子 2
阅读权限 10
注册 2007-12-28
状态 离线
#2
使用道具
发表于 2008-1-2 10:57
资料
个人空间
短消息
加为好友
回复 #1 kadywang 的帖子
没人知道吗?期待...
bambo
新生入学
UID 218327
精华 0
积分 10(
积分有什么用?
)
帖子 1
阅读权限 10
注册 2007-11-15
状态 离线
#3
使用道具
发表于 2008-2-19 09:29
资料
个人空间
短消息
加为好友
这种不同平台的程序的io上面差别很大的。
jallyx
新生入学
UID 208416
精华 0
积分 11(
积分有什么用?
)
帖子 9
阅读权限 10
注册 2007-8-22
状态 离线
#4
使用道具
发表于 2008-4-8 21:25
资料
个人空间
短消息
加为好友
如果我没有搞错的话,fwrite实际上是调用 write完成任务的,write是系统调用,这很耗时的(我不明白win是怎么实现的,反正Linux是这样)。
pB\:a0a'X
建议自己设立一个缓冲区,每当缓冲区满了才调用一次write,这样应该有一定的效果。
$`)ih:A%~O QT?b
w$yYO(JJV
~x
另外,说一句不好听的话,我不喜欢C++高手,他们只是说,从来不做。
*yl4B4P.A#T@ vD
我这儿的解释很简单,希望你能明白,如果实在不知如何实现,可以向我要源码。
N!D1paE
jallyx@163.com
www.linuxeden.comaL2|8_0Wl {{C
/P0hr!c/{+d|#uLd
[
本帖最后由 jallyx 于 2008-4-8 21:31 编辑
]
flag
版主
版主
UID 19801
精华
1
积分 28(
积分有什么用?
)
帖子 5581
阅读权限 100
注册 2002-7-19
状态
在线
#5
使用道具
发表于 2008-4-9 18:31
资料
个人空间
短消息
加为好友
把你说的结果不同的程序写出来啊,用ofstream并不是等写完了才继续运行,所以结果快。
上帝说,有问题,找GOOGLE 写程序是很神圣的事情!同样只是装系统,卖菜的大娘会的事情不见得就跟卖菜一样了。
投票
交易
悬赏
活动
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
升级个人空间
基本概况
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
管理统计
当前时区 GMT+8, 现在时间是 2008-5-17 11:02
Powered by
Discuz!
5.5.0
© 2001-2007
Comsenz Inc.
Processed in 0.033970 second(s), 5 queries
TOP
清除 Cookies
-
联系我们
-
Linux伊甸园
-
Archiver
-
WAP
多串口卡,串口服务器,终端服务器,KVM切换器
best dvd copy software