C#速度够快吗

C#速度够快吗,c#,performance,C#,Performance,一个用C#编写的游戏在长时间玩(比如一次玩24小时)后会有速度问题吗?我特别说的是一个2D RPG类似于旧的最终幻想或龙探索游戏。我知道像Python这样的语言速度会太慢,很好奇C#会是什么样子 编辑:我写的程序很像白蚁出没的树:) @吉米-这就是问题的关键所在。我正在开发一个小型FF克隆以改进我的编码是的,它是。看一看。已经有一些游戏是用C#编写的。XBox 360的XNA游戏套件使用C#…我想看看几年前Eric Lippert发布的这段9频道视频 如果你想知道比较性能的话,这是一款很棒的手

一个用C#编写的游戏在长时间玩(比如一次玩24小时)后会有速度问题吗?我特别说的是一个2D RPG类似于旧的最终幻想或龙探索游戏。我知道像Python这样的语言速度会太慢,很好奇C#会是什么样子

编辑:我写的程序很像白蚁出没的树:)


@吉米-这就是问题的关键所在。我正在开发一个小型FF克隆以改进我的编码

是的,它是。看一看。已经有一些游戏是用C#编写的。

XBox 360的XNA游戏套件使用C#…

我想看看几年前Eric Lippert发布的这段9频道视频


如果你想知道比较性能的话,这是一款很棒的手表。计算机硬件从那时起进步了很多,但概念没有改变,如果正确使用C#/.Net,它可以具有优异的性能。

如果代码在执行过程中变慢——我的意思是做同样的事情需要更长的时间——这表明内存管理不正确。我不知道你说的Python变慢是什么意思,但我对它没有太多经验。有些游戏或图形库可能无法正确处理内存,这可能会导致性能下降(最终崩溃)。但是关闭应用程序并重新启动会解决任何类似的问题——如果用户要玩24小时,你肯定会有一个保存功能


为了回答你的问题,如果你玩同一个游戏太久,正确编写的C#不会减速。(但两者都不能正确编写Python代码或任何其他语言)。

高级游戏逻辑肯定可以用Python编写。事实上,使用“缓慢”的脚本语言让游戏设计者有更多的自由是很常见的。实际上,游戏的最低级别(如硬件接口/驱动程序)都是用C编写的。根据您需要的性能类型以及它将运行在什么类型的硬件上,这两者之间的所有其他内容都有争议。

QUEK的.NET重写:


“长时间播放后的速度问题”-无论使用何种语言,这听起来像是内存泄漏,或者只是普通的'ol bugs..@Mitch Wheat-垃圾收集器的工作方式不可能影响它吗?如果它不是很好并且导致碎片化,那么可以想象,24小时后事情会变慢。@Edan:那将是垃圾收集器中的一个错误。如果你知道你的程序很像白蚁滋生的树,你可以试着去做,而不是写那些不管你在什么环境下运行都会很慢的程序。特别是,如果您的代码是草率的,C++编写会导致更多的内存泄漏,从而比编写C语言或Python等高级语言的性能更差。@米契麦迪:Irc,Python无处不在的DIST中的哈希表在重键转换后会慢下来。但是,这个端口实际上是用托管C++而不是C语言来完成的。没错,保罗。最后,我们有一个IL和一个托管应用程序。用于到达那里的实际语言不应该太重要。@亚历克斯,托管C++还接受使用非托管本机库。你的程序的一部分可以被管理,另一个可以是非托管的,这就是托管C++的特殊之处。因此,它与VB.NET和C#完全不同,它们是纯托管程序集,使用IL.Wow,这是一个古老的概念。我今天在公共汽车上碰到了查尔斯;希望有一天我们能多拍一些9频道的视频。