在某一个槽函数内,有如下代码:
m_KSRD.T55x7WriteDirect(1, &wrBuff[0]);
m_KSRD.T55x7WriteDirect(2, &wrBuff[4]);
m_KSRD.T55x7WriteDirect(3, &wrBuff[8]);
m_KSRD.T55x7WriteDirect(4, &wrBuff[12]);
m_KSRD.T55x7WriteDirect(5, &wrBuff[16]);
m_KSRD.T55x7WriteDirect(6, &wrBuff[20]);
每调用一次“m_KSRD.T55x7WriteDirect()”都会执行大约350ms的时间。
其中,wrBuff 为全局定义变量。
一般执行到第3次时,就会提示:“The inferior stopped because it received a signal from the Operating System”
检查代码,也不存在什么野指针。
将这段代码拆分为6个小函数,比如:
a(); b(); c(); d(); e(); f();
每个小函数都包含上述代码的一条语句。比如,
a函数里面只有:m_KSRD.T55x7WriteDirect(1, &wrBuff[0]);
b函数里面只有:m_KSRD.T55x7WriteDirect(2, &wrBuff[4]);
c/d/e/f函数一次类推。
主函数更改为
a();
b();
c();
d();
e();
f();
此时再执行代码则无问题
请问,这个是由什么原因造成的?
我感觉是每个函数的执行时间,系统或编译器对其做了限制,请问是不是这个问题呢,是的话,编译环境是从什么地方定义的,或者如何修改,谢谢!!
本人是个新手,感谢各位不吝赐教!!谢谢!!!
|