我有三個QLineEdit字段,其內容變化非常快(100 /秒)。 不知何故,它崩潰的應用程序。也許這是一個錯誤,或者我犯了一個錯誤。快速變化的QLineEdit崩潰應用程序
下面是一些代碼:
acc[0]->setText(QString("%1").arg(acceleration.x));
acc[1]->setText(QString("%1").arg(acceleration.y));
acc[2]->setText(QString("%1").arg(acceleration.z));
調用堆棧:http://pastebin.com/RmkZHTjk
有時我得到這個錯誤:
Unhandled exception at 0x6518cbb3 (QtGuid4.dll) in Test.exe: 0xC0000005: Access violation reading location 0x0000002c.
調用堆棧是:http://pastebin.com/c1u53a0Z
我用QLabel試了一下,然後我得到另一個錯誤:
Unhandled exception at 0x751a9617 in Test.exe: Microsoft C++ exception: std::bad_alloc at memory location 0x03aeea70..
調用堆棧:http://pastebin.com/G4yeiW2Y
@RolandSoós:您是否嘗試過使用代碼做一些更改?例如,'setText()'只有一個'QLineEdit',或者而不是'QLineEdit'使用'QLabel'?有趣的是,結果會是什麼......是否真的需要用這個速度打印加速度值? – mosg 2010-08-26 05:13:06
您是否以較慢的速度嘗試跟蹤回溯的弦(或者只是一個單行?)?此外,回溯多久?有時堆棧溢出會導致Qt深處的崩潰,並且一個人撓了撓頭,直到他注意到堆棧的大小。 – 2010-08-26 08:28:37
是的,我試過用QLabel,然後我得到了另一個錯誤。我已將此信息添加到問題中。我試圖將其限制在10轉/秒。它在6%的處理器使用情況下運行良好。在100change/sec的處理器使用率是50%(我有2個核心)。 – 2010-08-26 08:31:02