今天被别人问到这样一个问题,总共100张票,4个窗口卖,依照平时的方式可能就用资源同步来做了。但是别人说这样你不就是单线程了吗?求大佬解释
想象一下真实的场景,会怎么做?
比如初中或高中餐厅卖馒头:
假设现在有4个窗口,一共100个馒头。怎么卖得快?
开始时,每个窗口各25个馒头,【谁先卖完谁找其他窗口要(这个逻辑可以不要,假设100个馒头肯定会卖光)】,所有窗口都没了就卖光了呗。
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
有两个前提
CPU
CPU
型计算,不需要IO
操作,不需要读写硬盘或库那么开几个窗口其实跟单线程是一样的,甚至由于频繁的上下文切换(线程的上下文切换由虚拟机层实现),还会比单线程耗时