- 主题:c/c++的开发人员是不是越来越少了?
怎么保证两个协程在一个线程上执行的?
【 在 hgoldfish 的大作中提到: 】
: 有的。我举个栗子。
: 比如经典的有两个内存里的帐户 A 和 B,一个协程从 A 转帐给 B,另一个协程从 B 转帐给 A,如果是线程,那需要对这两个帐号加锁,让操作串行化。而协程天然是串行化的,在这里不需要加锁。
: 但是考虑上面那个转钱的动作,加和减都是网络操作。在 A-money 的时候,阻塞住了,另一个协程正在执行 A+money,此时仍然需要加锁。
: ...................
--
FROM 111.203.35.*
放弃多核,一个进程只有一个线程,是吗?
【 在 hgoldfish 的大作中提到: 】
: 不支持协程在多个线程上执行就行了。
: 你看 nodejs 和 python 都是单线程的。
:
--
FROM 111.203.35.*
我明白了,你是通过架构设计,用类似微服务的形式拆分业务。这样多核和协程的好处就可以兼得了
是这样吗
【 在 hgoldfish 的大作中提到: 】
: 看情况。
: 我协程+进程,协程+线程的方案都用过。
: 前者很适合 web 服务器,在 master 里面 bind() 端口后,每个 slave 进程都 accept() 那个 fd.
: ...................
--
FROM 111.203.35.*
这个是不是和goroutine差不多了多对多
【 在 ylh1969 的大作中提到: 】
: 我的方案是多线程协程,协程在线程间跳来跳去。
: 线程也在协程间跳来跳去。
: 线程池+每连接一个协程。
: ...................
--
FROM 61.148.245.*