C#:在Visual Studio中保留变量';程序编译之间的内存

C#:在Visual Studio中保留变量';程序编译之间的内存,c#,matlab,visual-studio,visual-studio-debugging,C#,Matlab,Visual Studio,Visual Studio Debugging,我有一个计算密集型的程序,首先使用二进制文件中的数据填充一个非常大的数组。然后程序继续操作这些数据等。从bin文件加载我的变量是最耗时的步骤 有没有办法将变量保存在VisualStudio的内存中,这样我就可以编辑/重新编译程序的内容,而不必每次都重复这个加载过程 我来自Matlab,在那里我可以将一个变量加载到工作区中,然后在关闭Matlab环境之前,我可以从任何脚本中任意使用它 我认为那是不可能的。每次编译时都必须将其加载到内存中。Matlab与C#非常不同。正如您所说,它在一个封闭的环境下

我有一个计算密集型的程序,首先使用二进制文件中的数据填充一个非常大的数组。然后程序继续操作这些数据等。从bin文件加载我的变量是最耗时的步骤

有没有办法将变量保存在VisualStudio的内存中,这样我就可以编辑/重新编译程序的内容,而不必每次都重复这个加载过程


我来自Matlab,在那里我可以将一个变量加载到工作区中,然后在关闭Matlab环境之前,我可以从任何脚本中任意使用它

我认为那是不可能的。每次编译时都必须将其加载到内存中。Matlab与C#非常不同。正如您所说,它在一个封闭的环境下运行脚本。
C#编译一个与Visual Studio(调试版)通信的独立程序,但不属于VS。将大量数据加载到内存并不耗时,处理它很耗时

加载大文件主要取决于磁盘驱动器的读取速度。如果您有SSD,则不应超过几秒钟

无论如何,您可以始终以json的形式存储数据,或者以某种人为的方式,将数据的二进制形式(反序列化)存储到磁盘中


您将从磁盘加载烘焙数据,而不是获取原始数据并再次处理

>我不认为你可以用VisualStudio来做,但是你可以考虑使用内存缓存来存储你的数据。在Windows上安装有点麻烦,所以我建议通过。一旦它运行了,就可以转到提供程序。

否,变量不能像在Matlab中那样存储在Visual Studio中。VS是一个用于编写程序的IDE,而Matlab是一个计算包。你可以查看有关将C#脚本添加到游戏编辑器的文章。通常他们支持热脚本重新加载正是出于这个原因。这个问题需要更详细的信息才能得到有用的答案。根据您想做什么,可以有不同的解决方案来解决您的问题,例如通过REST或命名管道从服务提供数据、内存映射文件或使用代码的计算部分动态加载和卸载应用程序域。我无法在VS中实现这一点,即使有扩展。如何将数据从VS传递到应用程序?