并发
文章平均质量分 60
Ahhhhhaa
这个作者很懒,什么都没留下…
展开
-
分布式归并排序的实现
语言工具:golang 基本思路: 1.通过协程模仿多个机器节点。每一个协程代表一个机子。 2.每台机器对自己内存中的数据进行排序,此处用的库函数 nums []int sort.Ints(nums) 3.每个机器都将排好序的数据发送到channel中,在此期间是利用开启协程来实现每个节点并行执行。 4.多个channel产物,产物里保存着各个节点排好序的数据,服务器保存节点IP地址和端口号,并并行的接收每个服务器传入channel中的数据。 5.并行进行对N个channel中的数据的归并排序,并边归并边原创 2021-04-30 09:23:08 · 507 阅读 · 0 评论 -
关于CAS的理解
CAS:compare and swap 比较交换。 简单原理:CAS包含3个数,内存位置,预期原值,新值。如果内存位置的值为预期原值,那么就将新值改变到内存位置中,否则不进行处理。这个过程是原子性的 但是,预期原值是哪来的呢? 详细原理(过程): 一个线程(进程)要对内存数据进行更改,首先要拿到这个原始数据A,然后经过自己的一系列操作变为B,变为B不是结果,结果是要将B写回内存中,此时就要用到CAS了,首先看内存中的值是否为还是A,如果是,说明还没有被其他线程(进程)更改过,自己在这期间就是对正确的内存做原创 2021-04-28 16:53:51 · 224 阅读 · 0 评论