我有一个Windows C++应用程序,其中包含一个std::hash_set,其中包含大约5百万个条目,每个条目都有32字节。如果我在单独的线程中创建hash_set,则根据ProcessExplorer使用> 1 GB。当我释放列表时,我可以看到这一点。如果我在主线程中创建它,则使用200 MB。这种现象仅适用于我的应用程序的32位版本。它不会在x64版本中发生。我使用Win XP x64双四核。这不是内存泄漏。在clear()上释放了所有内容。
我的猜测:Windows 32位不适合许多线程/许多核心。
你的猜测是什么?
我的猜测:Windows 32位不适合许多线程/许多核心。
你的猜测是什么?