碰撞检测的问题

我遇到一个问题,炮弹的速度很快,造成可能穿过了前面一个很薄的碰撞体,然后与后面的另一个与前面的碰撞体很近的碰撞体,由于子弹较长,有时会造成同时与两个碰撞体碰撞,从而调用了两次子弹本身的碰撞函数,但我希望的效果是只能调用一次,我试着设置了一个锁,但是好像并没有用,该如何解决呢?


下图显示的就是测试的结果,似乎碰撞的函数是没有先后执行顺序的,我想着无论谁先执行都可设置这个锁为true,这样另一个碰撞就无法执行了,但是从结果来看锁的值都为false