建议的.NET软实时(Recommended .Net soft real-time)

2019-09-16 17:59发布

我感兴趣的(太硬)获得关于软综合信息实时应用程序在.net 3.5 / 4的WinForms主要(WPF也许)。 谷歌结果的东西都很差 - 上并行一些quides只...问题是我的例子,如何可以写一个实时的患者健康监控客户端的一些医疗器械? 或实时股票数据经纪人申请? 或火车导航系统? 或房屋自动化软件,它负责打开/关闭的门? 等等......所以这种实时应用程序为目标。

到目前为止,我还没有发现它的任何书籍除了Windows并行编程 - 这是basicly不是这个,而是并行处理...

提前致谢

Answer 1:

我个人的感觉是,如果你的要求是实时的软件,你不应该使用.NET

.NET使用未对实时应用面向虚拟机。 例如,你不能当垃圾收集器将运行,或者它要去多久采取预测。 如果这发生在一个关键时刻,您的实时软件将不再是实时的。

[编辑:对不起,我知道这是不是真的回答你的问题,但我认为这可能是为什么你都很难找到它的信息的原因 - 因为没有人做的。 如果你正在编写实时软件,你可能应该看C或C ++来代替。 并根据这是多么重要,专用确定性的实时操作系统。 甚至特定语言的设计考虑到实时]



Answer 2:

在我的公司,我们已经开发了C#和C ++ / CLI的telphony IVR服务器。 它可以处理数以百万计,每年的电话,每天24小时运行,永不死机,一般是一样强大,我们求之不得。 有没有什么特别之处,它只是普通的Windows服务,而速度,效率和响应时间明显出现了一些我们已经瞄准了,它不会做任何事情深奥就像试图控制GB等。

然而有一个大的,但是。 通过我们的应用程序所控制的硬件的驱动显然不是.NET。 因此,在非常低的水平,我们不会被不必要的GBC关注等等,都像IP电话数据包或语音流的转发毫秒依赖的东西是在我们的电话板上的固件处理。

所以综上所述:我绝不会甚至考虑使用.NET编写的驱动程序或非常非常低的延迟代码,但我肯定会写代码控制/逻辑使用.NET。

不幸的是我不能指向你任何有用的资源,因为我从来没有遇到过任何下去,但我希望这个用例将帮助你做出你是否应该考虑的.Net为您实时项目知情decission。



Answer 3:

我不同意@Simon,就可以构建Windows和.NET实时系统。 你可能不能够建立非常特殊的困难时期系统,但适当的设计和测试,你可以和我有。

有许多技术推到硬时间要求的软件解决方案或硬件,诸如运动/ IO控制器 。 在Windows / .NET进行了大规模的系统更容易比RTOS开发和为数不多的时间关键要素,可向发展。 我的方法是解决这些时间关键首先涉及和测试。



Answer 4:

Parralelism和线程是一些.NET提供帮助您编写实时应用程序的工具,而是实时系统的体系结构是独立的语言。

这 MSDN文章对并行计算的一些很好的联系。

也许, 智能客户端软件工厂可能是一个很好的参考执行力度,为您开始调查。



文章来源: Recommended .Net soft real-time