游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8627|回复: 8

C#做的2D游戏服务器端比C++慢多少呢

[复制链接]

3

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2008-10-25 19:28:00 | 显示全部楼层 |阅读模式


打算 用c#做一个2D游戏服务器端,像梦幻西游那样的,
现在的 问题就是都说C#做服务器比C++慢,那 到底慢多少呢
如果在20%左右  那 还可以接受,
服务区基本都是逻辑浮点运算,
想请教大家  C#做游戏服务器比C++能慢多少呢

谢谢了  

在 问一下 ,用C#做2D游戏客户端,以现在的大家电脑配置 CPU1.5G左右  
速度应该没问题 吧 [em5] [em5]

19

主题

638

帖子

638

积分

高级会员

Rank: 4

积分
638
发表于 2008-10-25 21:53:00 | 显示全部楼层

Re: C#做的2D游戏服务器端比C++慢多少呢

泛泛的说,在15%以内
纯粹的浮点运算在5%以内
和网络接口部分毕竟包了一层,有些效率损失,多少我也不清楚,如果你要优化到极限就别用C#。
以上估计是假定C++的代码经过较好的优化的情况,而不是很少优化或极限优化的情况。

不过,如果你对.net不熟,也可能犯吃干内存的错误

3

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2008-10-25 23:37:00 | 显示全部楼层

Re: C#做的2D游戏服务器端比C++慢多少呢

谢谢了
服务器速度损失才15%。完全可以 接受了。服务器用C++本来负载1000人,现在负载850人,
网络部分我用C,IOCP做 好了 ,
说到C++优化   我 还没 那么好的技术进行很好 的优化
看 来 用 C#比较合适我

就是不知道用C#做游戏客户端如何,毕竟有客户端有图像处理

2

主题

683

帖子

687

积分

高级会员

Rank: 4

积分
687
发表于 2008-10-26 07:23:00 | 显示全部楼层

Re: C#做的2D游戏服务器端比C++慢多少呢

服务区基本都是逻辑浮点运算

这个绝对是胡说八道.服务器以整数运算和大量零散内存操作为主.
而大规模的内存操作对于C#来说是一个弱项.因为C#的对象比较重量级,内存分配也是托管的.

3

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2008-10-26 11:28:00 | 显示全部楼层

Re: Re: C#做的2D游戏服务器端比C++慢多少呢

wildfire: Re: C#做的2D游戏服务器端比C++慢多少呢

服务区基本都是逻辑浮点运算

这个绝对是胡说八道.服务器以整数运算和大量零散内存操作为主.
而大规模的内存操作对于C#来说是一个弱项.因为C#的对象比较重量级,内存分配也是托管的.


多谢指点,没 写 过游戏服务器  ,自己乱猜的 [em8]

19

主题

638

帖子

638

积分

高级会员

Rank: 4

积分
638
发表于 2008-10-26 15:01:00 | 显示全部楼层

Re: Re: C#做的2D游戏服务器端比C++慢多少呢

wildfire: Re: C#做的2D游戏服务器端比C++慢多少呢

服务区基本都是逻辑浮点运算

这个绝对是胡说八道.服务器以整数运算和大量零散内存操作为主.
而大规模的内存操作对于C#来说是一个弱项.因为C#的对象比较重量级,内存分配也是托管的.


C#的内存分配并不是弱项,server开发是.net一大目标之一,微软对其的重视程度远超过客户端。CLR有专门的server模式。C#的对象并不是重量级的,对象存储和C++区别不大,虽然RTTI信息比较丰富但那是静态类信息,不增加实例的负载。GC相对于缺省的C++内存非配器来说是有很大优势的,分配速度极快,垃圾收集过程同时也是清除内存碎片的过程,在多处理器的服务器上可以由独立处理器专门处理GC反而会比在桌面系统表现更好。当然,专业的C++程序是通常自定义内存分配器的,可以取得更好的效果。

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2008-10-26 16:04:00 | 显示全部楼层

Re: C#做的2D游戏服务器端比C++慢多少呢

没有数据说明凭空YY没用啊,个人还是觉得C++才是王道

3

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
 楼主| 发表于 2008-10-26 16:39:00 | 显示全部楼层

Re: Re: C#做的2D游戏服务器端比C++慢多少呢

tonykee: Re: C#做的2D游戏服务器端比C++慢多少呢

没有数据说明凭空YY没用啊,个人还是觉得C++才是王道

C++是高效,关键是 高 多少的问题,
如果做游戏服务器只是比C#快15%

比较2者学习的难度,游戏最后开发 维护,扩展的难度,
觉得C#合算,想找个 C++高手来,也不 容易啊
想用好C++ ,要 学习的太多  太难了  [em7]



19

主题

638

帖子

638

积分

高级会员

Rank: 4

积分
638
发表于 2008-10-26 17:41:00 | 显示全部楼层

Re: Re: C#做的2D游戏服务器端比C++慢多少呢

tonykee: Re: C#做的2D游戏服务器端比C++慢多少呢

没有数据说明凭空YY没用啊,个人还是觉得C++才是王道


其实,脚本语言才是王道,不管C++还是C#主要还是做底层和框架,真正的游戏代码是脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-21 00:53

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表