微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java中的Mutli线程

当我在 java中有一个synchronized方法,并且如果多个线程(比如10个线程)尝试访问此方法并假设某个线程可以访问此方法并完成方法的执行并释放锁定那么剩下的哪个9个线程可以访问此方法吗?是否有任何标准机制可以从池中选择下一个线程,或者它将按FIFO顺序选择还是随机选择线程?

解决方法

Java中的线程调度是特定于平台的.在同步方案中,无法保证线程执行的顺序.

话虽如此,程序大致如下:

>采用抢占式调度算法
>每个线程都由JVM获取优先级编号
>选择具有最高优先级的线程
>在具有相同优先级的线程之间遵循FIFO排序

JVM运行具有最高优先级的线程.也可以通过Thread类的setPriority()方法以编程方式设置优先级.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐