繁体   English   中英

多线程:我们如何使用 Java 进行时间切片?

[英]Multithreading: How can we do Time Slicing using Java?

是否可以使用 Java 使用 In-bult java 类进行时间切片?

在互联网上搜索时,我只得到以下类型的定义:

时间片是一个通常与处理器和操作系统相关的术语......它的意思是......当操作系统运行许多进程时,每个进程都必须有机会运行......那就是每个进程应该在特定时间获得处理器.....所以现在如果你有 3 个进程正在运行,例如 p0、p1、p2,那么现在 p0 可以运行 5 毫秒的时间,然后轮到 p1,然后轮到 p2。 ....因此,您为必须由处理器运行的每个进程提供了一些称为时间片的时间.....因此,这些进程(取决于操作系统)运行时存在不同的算法处理器……

我在 Java 面试问题中遇到了这个问题。 但无法获得任何与此相关的 Java 代码示例。

Time Slicing 仅仅是操作系统的概念,还是有任何实际用法可以显示使用 Java 编程? 有人可以分享同样的例子吗?

int n = Runtime.getRuntime().availableProcessors(); 然后启动n + 1线程。 根据定义,如果n + 1线程在n内核上运行,那么就会发生时间切片。 实际使用,需要运行n + 1线程,并且只有n cpu核心。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM