永发信息网

单进程单线程的程序,同时能占用1个CPU的1个核,那么单进程多线程的程序,同一时能占用1个CPU的多个核?

答案:2  悬赏:60  手机版
解决时间 2021-01-30 13:30
  • 提问者网友:藍了天白赴美
  • 2021-01-30 01:28
单进程的多线程是否能够实现跨cpu核心调度? 如果能够,那么一个进程的多个线程访问同一个资源怎么样实现线程同步? 是否要实现指令级别的同步?
最佳答案
  • 五星知识达人网友:迷人又混蛋
  • 2021-01-30 01:53
多线程程序可以同时占用多个核心;
调度CPU核心的任务会由操作系统来完成,程序员只须创建新线程即可;
多线程共享资源时可通过调用操作系统提供的线程同步API来实现线程同步;
windows的Interlocked函数族即为指令级别的同步API
全部回答
  • 1楼网友:从此江山别
  • 2021-01-30 02:00
可以实现线程与CPU的绑定,用于将线程均衡地分布在不同的CPU上运行,在Linux下可以实现,Windows的没有试过。 另外,线程间访问同一个资源需要使用临界区(CRITICAL_SECTION), 它是实现同一进程下不同线程间的对资源互斥访问的方法
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯