C# C中的低级多线程网络应用程序在Linux上的运行情况如何?

C# C中的低级多线程网络应用程序在Linux上的运行情况如何?,c#,linux,multithreading,networking,mono,C#,Linux,Multithreading,Networking,Mono,我们将在C#中构建一个具有以下属性和技术的服务器应用程序: 在TCP/IP上运行的服务器-客户端模型,可同时为数百个客户端提供服务 具有大量同步的多线程设计 基于SQLite或类似引擎的简单本地数据库 公钥密码学与TLS 我的问题是,我们是否可以期望这样一个服务器应用程序也能在Linux上工作,以及它的性能是否与它在Windows平台上的性能类似 我们没有意识到Mono的局限性,这就是我的问题所在。我们能指望线程和synchro在Linux上的Mono中正常工作吗?我们能指望TCP网络在Li

我们将在C#中构建一个具有以下属性和技术的服务器应用程序:

  • 在TCP/IP上运行的服务器-客户端模型,可同时为数百个客户端提供服务
  • 具有大量同步的多线程设计
  • 基于SQLite或类似引擎的简单本地数据库
  • 公钥密码学与TLS
我的问题是,我们是否可以期望这样一个服务器应用程序也能在Linux上工作,以及它的性能是否与它在Windows平台上的性能类似

我们没有意识到Mono的局限性,这就是我的问题所在。我们能指望线程和synchro在Linux上的Mono中正常工作吗?我们能指望TCP网络在Linux上的Mono中正常工作吗?数据库

在Mono中运行C#应用程序目前有哪些局限性?它只是工作,还是有问题?有什么是不可能的吗?或者是否有必要为每个平台分别编写代码的某些部分


编辑:请注意,我正在寻找使用Mono的开发人员的经验。我最关心的是线程和同步操作。我不是在寻找事实和经验,也不是意见。

您是否已经查看了该部分,特别是该部分?甚至还有一节是关于。如果您没有执行Windows特定的操作(即仅使用基本的.NET库功能),那么您不应该有太多问题。是的,我做了,我主要关心Linux上的线程和同步,以及使用库-即从NuGet下载并使用它。我看不出这个问题是如何基于观点的,我正在从实际使用Mono的开发人员那里寻找事实和经验。我想知道线程是否在Mono中的Linux上工作,以及在.NET中的Windows上工作,其他部分也是如此。我没有投票关闭它,但它可能是基于意见的,因为您需要使用特定工具的经验(这是一种意见)。在Linux和Windows中,Mono中的线程为何不能工作相同?这就是单声道的观点;由于没有发布任何特定的代码,我们无法告诉您的代码是否能在这两个平台上按预期工作,除非您尝试并遇到特定问题。如果您关心文档中没有讨论的Mono问题,您可能会在程序员频道上得到答案。只要您使用托管代码,在linux上将.net移植到Mono是没有问题的(因此nuget软件包没有问题)。只要您依赖于mono版本支持的.net内容,包括多线程、网络等,就不会有问题。只需检查哪些是和哪些不是移植到mono()。