本人本地遇到了一个1073741819 (0xC0000005)问题。详细记录下过程:
程序结构是一个界面程序,通过按键启动底层的一个烧录固件的过程,烧录过程较长,为了便于观察,我在底层的烧录过程中加了一个进度条。
为了改变此进度条,我将界面ui对象直接传给了底层的烧录程序。烧录过程中大概率出现1073741819 (0xC0000005)。
后改为传一个信号给底层程序,当需要改变进度条时,给界面程序发信号即可。改了之后,不会再出现此问题。
原因:界面不是锁死的,当烧录过程中,如果我点击了ui界面的按键或者切换串口,ui对象的值都会发生变化,而此时底层的程序正在以这块内存为参数进行调用,你却改变了其中的值,这在内核来说时不被允许的内存行为。个人愚见,欢迎指教
博主在程序中遇到一个0xC0000005错误,原因是界面UI对象被直接传递给底层烧录程序,在烧录过程中用户界面的交互导致了内存冲突。为解决此问题,博主改为使用信号机制,当需要更新进度条时,底层程序发送信号给界面,避免了直接操作UI对象,成功解决了错误。
3064

被折叠的 条评论
为什么被折叠?



