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

时间:2017-10-31 05:12:14

标签: c# matlab visual-studio visual-studio-debugging

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

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

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

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

我不认为您可以使用Visual Studio执行此操作,但您可以考虑使用内存缓存(如redis)来存储数据。在Windows上设置有点痛苦,所以我建议通过Chocolatey获取它。一旦它运行StackExchange.Redis,就转到提供商。

答案 2 :(得分:-1)

将大量数据加载到内存中并不耗时,处理它非常耗时。

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

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

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