ruby – 线程安全是什么意思?

前端之家收集整理的这篇文章主要介绍了ruby – 线程安全是什么意思?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在阅读一些关于 ruby中多线程编程的博客.我注意到的是作者倾向于使用线程安全这个词.这是什么意思?为什么编写线程安全代码很重要?

解决方法

如果你有一个资源(比如说一个全局的书籍列表),你有两个运行的线程可以修改这个列表.在很多情况下,列表的数据会不一致.

>(线程A读取书籍并显示其数据)
>(线程B在线程A使用数据时删除同一本书)
>(线程A现在想要向本书添加一些信息)

因此,您必须使代码具有线程安全性,以便在任何时候只有一个线程可以对书籍列表具有写入权限.

SpyrosP提到的死锁发生在线程A阻塞List进行写入并等待线程B在列表上添加数据时.因为两个线程都会等待彼此做某些他们无法做的事情.只有在未正确实现线程安全机制时才会发生这种情况.

原文链接:https://www.f2er.com/ruby/268071.html

猜你在找的Ruby相关文章