开发者社区 问答 正文

为什么多线程同时写入数组_deferredTasks会导致野指针问题?

为什么多线程同时写入数组_deferredTasks会导致野指针问题?

展开
收起
夹心789 2024-06-27 12:04:28 54 发布于浙江 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 多线程同时写入数组_deferredTasks时,如果没有适当的锁机制来保护,就可能导致数据竞争。当一个线程正在写入数组时,另一个线程可能也在进行写入操作,这可能会破坏数组中的对象地址,导致野指针问题。在推演图中,Main Thread在尝试获取数组index = 0的对象地址时,就可能因为多线程写入导致该对象地址被异常破坏而出现野指针。

    2024-06-27 13:29:28 举报
    赞同 1 评论

    评论

    全部评论 (0)

    登录后可评论
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等