0

我有 N 个相同的程序同时运行

给他们每个人各自的 .dll 会更好吗?或者这不会影响性能。(在速度方面?或内存分配?)

谢谢

4

2 回答 2

2

你的意思是,在磁盘上有一个单独的 DLL 文件?它不会影响速度或内存分配。导入 DLL 会导致 DLL 的内容被加载到单个程序的内存空间中,因此使用同一个 DLL 的多个程序实际上将使用它的不同“副本”。(注意引号中的“复制”:相同的物理内存可能用于多个程序实例中的 DLL 代码。如果是这样,那么对所有程序使用相同的 DLL 将减少整体物理内存使用量,但您不能指望这一点。 )

于 2013-07-25T16:44:05.077 回答
0

取决于你的 N 值。使用组合方法总是更好。也就是说,同一程序的最大数量(比如 5 或 10 个,取决于 dll 的使用情况)访问同一个 dll 的实例没有明显的延迟,如果有超过所述的定界数,最好创建另一个dll 的副本并将它们分配给新实例。

同样,这取决于 N 值,使用 dll 会导致多少延迟等。不鼓励制作多个 dll 的原因是它占用了大量空间,如果 N 很大,它可能会过时创建 10校车运送住在 10 个不同地方的 10 名学童。

于 2013-07-25T16:45:26.053 回答