网站首页 返回列表 “慢生活”不是懒惰,放慢速度不是拖延时间,而是让我们在生活中寻找到平衡。

如何设计并实现一个线程安全的 Map ?(下篇)
2020-06-10 03:09 admin map线程

在上篇中,我们已经讨论过如何去实现一个Map了,并且也讨论了诸多优化点。在下篇中,我们将继续讨论如何实现一个线程安全的Map。说到线程安全,需要从概念开始说起。线程安全就是如果你的代码块所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和...
阅读全文

如何设计并实现一个线程安全的 Map ?(上篇)
2020-06-10 03:09 admin map线程

Map是一种很常见的数据结构,用于存储一些无序的键值对。在主流的编程语言中,默认就自带它的实现。C、C++中的STL就实现了Map,JavaScript中也有Map,Java中有HashMap,Swift和Python中有Dictionary,Go中有Map,Objective-C中有NSDictionary、NSMu...
阅读全文

刷题:4个线程同步
2020-06-10 03:07 admin 线程刷题

题目:有4个线程和1个公共的字符数组。线程1的功能就是向数组输出A,线程2的功能就是向字符输出B,线程3的功能就是向数组输出C,线程4的功能就是向数组输出D。要求按顺序向数组赋值ABCDABCDABCD,ABCD的个数由线程函数1的参数指定。输入描述:输入一个int整数输出描述:输出多个ABCD示例1输入10输出ABC...
阅读全文

go 进程和线程
2020-06-10 03:00 admin go线程

进程:__并发运行:并发运行是多个任务被同时发起运行,但同一时刻这些任务只能有一个处于运行状态。这取决于cpu核心和cpu数量__并行运行:指同一时刻,可以有多个任务真正的同时运行。必要条件是多cou核心和多cpu核心的计算环境。__并发程序建议:1.控制临界区的纯度2.控制临界区的颗粒3.减少临界区中代码耗时4.避免...
阅读全文
顶部 底部