gpt4 book ai didi

c++ - 多线程C++ dll全局变量导致崩溃

转载 作者:太空宇宙 更新时间:2023-11-04 12:07:08 25 4
gpt4 key购买 nike

我有一个小的 C++ dll,它有 2 个回调函数,可以从另一个 dll 中检索信息。

这 2 个回调函数在 1 个以上的线程中被重复调用。

它们都将信息添加到同一个全局 Cstring 变量中。

我有另一个函数,使用这个 dll 的程序将调用它来读取这个变量。

这种情况很少见,但有时我会崩溃,这肯定是因为这个全局变量被 2 个不同的函数同时读取/写入。

我对多线程不是很有经验,所以我真的不知道该怎么做。

有什么建议吗?

这是我之前发布的关于同一问题的问题,其中包含更多信息……(以及一些代码)。其中一位用户帮助我确认这是一个多线程问题,我们没有进一步了解。

C++ DLL crash (reading/writing crash related I think)

最佳答案

阅读 Thread Synchronization for Beginners .

如果您使用的是 MFC,则 CMutex可能是合适的。

关于c++ - 多线程C++ dll全局变量导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11546742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com