NewAll_ 2022-07-20 14:56 采纳率: 88.9%
浏览 40
已结题

学习时关于Java线程的疑问?

今天看学习视频时关于java线程有疑惑想请教一下大家:
1.对于多核CPU,如果是多进程并行,那对每个进程来说,其中的线程是不是只能并发,不能同时并行。
一个核心只能处理一个任务,多线程并行和多进程并行(不是并发)是不是不能同时存在。
2.优先级高的线程抢占的时间片多,这里的时间片多,指的是抢占到时间片的概率高,还是每次抢占到的时间片的时间长,该线程运行的时间长。
请指点一下,谢谢。

  • 写回答

2条回答 默认 最新

  • 於黾 2022-07-20 15:09
    关注

    1.线程是cpu执行的最小单位,而进程是线程的一个打包,每个进程至少由一个线程组成
    没有人说过cpu一次只能运行同一个进程里的一个线程啊,可以一个进程里的多个线程同时执行的
    而且即使是单核cpu,多线程和单线程效果也完全不一样
    如果你的进程只有一个线程,那你一旦执行了sleep,整个进程都被阻塞了;而如果你开2个线程,cpu就可以分时复用,把sleep的线程丢到后台去,先执行其他的线程
    2.当cpu不繁忙的时候,它就会按顺序调用栈里的线程来执行;
    当cpu变得繁忙了,它会优先调用优先级高的那些线程,忽略优先级低的线程
    也就是概率变高了
    这样在每次抢占时长不变的情况下,总时长是变长了的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月28日
  • 已采纳回答 7月20日
  • 创建了问题 7月20日

悬赏问题

  • ¥15 2024-五一综合模拟赛
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭