[英]Are there any operations/methods in Ruby that are guaranteed/documented to be atomic?
[英]ruby atomic operations in multithreaded environment
数组的推和弹出操作是原子的吗? 我可以安全地跑步吗
i = array.pop
...
array.push(i)
在GIL线程环境中?
您可以查看c代码(array.c),如果它调用了任何ruby方法调用(rb_funcall),那么我认为它不是线程安全的。 否则应该是...
您可以轻松地覆盖#pop等,并使它们具有自己的同步。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.