高手,请教多线程问题?

时间:2008-06-20 14:45:49   来源:论坛整理  作者:  编辑:chinaitzhe
程序中添加了三个并发线程,以前是好的,昨天给其中的一个线程添加了几行代码,结果当执行这几行代码时,就跑飞了,一直都没有回来了,我把这几行代码隐掉,他又好了,请问这大概是什么原因啊?我的线程启动是用AfxBeginThread,请教了!
网友回复:哪几行代码,信息太少,没法诊脉啊
网友回复:楼主先把问题描述清楚啊
网友回复:要不就是这几行代码有问题,要不就是共享资源冲突
网友回复:
引用 2 楼 k2eats 的回复:
楼主先把问题描述清楚啊

网友回复:跑飞了?啥意思?死锁么?
网友回复:跑飞了?啥意思?代码跑到外面然后发生了死锁?
网友回复:跑到别人电脑上了???????????????
网友回复:lz加了这些代码:
C/C code





Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/





if (!bflying)

    fly();       // go flying in this thread




网友回复:int i=0;
int filly = interpoint->yMin;
if (filly <256)
{
i = 256-filly;
filly = 256;
}
int maxy = interpoint->yMax;
if (maxy>2815)
{
maxy = 2816;
}
for (; filly <maxy; i =256,filly =256)
{
int startx,endx;
int indexy = 9-(filly/256-1);
for (int j=0; ; j =2)
{
startx = interpoint->Get(i,j);
endx = interpoint->Get(i,j 1);
}
if (startx==-1 ¦ ¦ endx==-1)
{
break;
}
if (startx <256)
{
startx = 256;
}
if (endx>(11*256-1))
{
endx = 11*256-1;
}
for (int linex=startx; linex <=endx; linex =256)
{
int indexx = linex/256-1;
isSaveIndex[indexy*10 indexx] = true;
}
}


执行这段代码时,执行到一半,它就到另外一个线程去了,可一去就没有在返回了!
网友回复:哈哈,谢谢各位!原因已经找到了!
关键字:高手,请教,多线程,问题,

相关文章

文章评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面