mfc中关闭一个线程时,有的用return 1有的return0,两者有啥区别呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mfc中关闭一个线程时,有的用return 1有的return0,两者有啥区别呢?相关的知识,希望对你有一定的参考价值。

参考技术A 何谓关闭一个线程?
是线程自己返回,还是你用TerminateThread之类的API将其结束?本回答被提问者采纳
参考技术B 样的形式走完怎样的人生,这一切,又何尝不是早有定数呢?只是我们自己不知道,所以才会苦苦挣扎,求索,探寻,不甘,原来到头来也不过是一场虚空而已。离开才是最终的归宿,消失才是最终

在 SKScene / Sprite Kit 中关闭同时触摸

【中文标题】在 SKScene / Sprite Kit 中关闭同时触摸【英文标题】:Turn off simultaneous touches in SKScene / Sprite Kit 【发布时间】:2015-02-27 18:36:54 【问题描述】:

我目前正在开发一款用户一次只能用一根手指触摸的游戏。我正在使用SKScene 并尝试寻找禁用多点触控功能的方法,但没有任何结果。我想在调用touchesBegan()touchesEnded() 之间的所有触摸时手动调用“return”,但该方法也有缺陷(SpriteKit SKScene missing touchesEnded)。

所以我的问题是:如何在 SKScene 中一次只允许一次触摸?

【问题讨论】:

【参考方案1】:

SKView 继承自 UIView,所以,在 didMoveToView 中添加:

self.view.multipleTouchEnabled = NO;

【讨论】:

【参考方案2】:

具有讽刺意味的是,经过几天一无所获,我在发布此问题后立即想出了一个 hack。但请注意,这是一个 hack,而且不是最优的,所以我仍在寻找更好的建议。破解如下:

在touchesBegan()里面,替换:

    for touch: AnyObject in touches 
        // Whatever is being done on touch
    

与:

    for touch: AnyObject in touches 
        if(CACurrentMediaTime()-lastTouchDate < 0.1) 
            return;
        
        lastTouchDate = CACurrentMediaTime();
        // Whatever is being done on touch
    

这样,只有第一次触摸会被注册,当多个触摸同时进入时,或者紧接着一个。 if(CACurrentMediaTime()-lastTouchDate

【讨论】:

以上是关于mfc中关闭一个线程时,有的用return 1有的return0,两者有啥区别呢?的主要内容,如果未能解决你的问题,请参考以下文章

如何让线程等待 JFrame 在 Java 中关闭?

如何在线程中关闭 QWebSocket?

自旋锁

自旋锁

如何从 Swift 中的主线程中关闭

linux环境中关闭tomcat,通过shutdown.sh无法彻底关闭--线程池