Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(207评价)
优惠后 ¥1899.00优惠前 ¥2499.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

多物体执行程序顺序
钢铁大侠发起了问答2018-01-03
2
回复
482
浏览

运行程序时,有多个物体同时运作,里面都有代码要获得其他物体并得到这些物体的参数,但这些物体会被销毁。

执行时在一些情况下会出现空指针异常的情况,加入判定避免,但在极限的情况下还是会报空异常。

例       public void sdtat()
    {
        if (enemyX != null)
        {
            overUI();
            retreatover();
        }
    }

想问下C#多线程执行是否是把一个方法里的代码执行完后,就会跳到其他线程执行,这样来回跳动达到同时运行呢?

因为有物体销毁这个代码,但加入判定还是会出错,请问老师有什么方法能避免吗?

能够先完成指定必须执行的一段代码才会跳到其他代码段中。

所有回复
  • siki • 2018-01-04

    C#多线程 执行中线程的调度是由CPU完成的,CPU控制,不会非得等你代码执行完后,多个线程的执行是有CPU调度的,你可以认为是同时执行的

    别使用多线程,使用协程,unity里面的协程是一段代码执行完再去执行另一个协程里面的代码的

    还有-4条回复,点击查看
    你还没有登录,请先登录或注册!
发表回复
你还没有登录,请先 登录或 注册!