1.9yield方法

Posted 栗霖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.9yield方法相关的知识,希望对你有一定的参考价值。

yield()方法的解释:放弃当前cpu资源,将它让给其他的任务去占用CPU执行时间。但放弃的时间不能确定,有可能刚刚放弃,但马上又获得CPU时间片。

线程代码:

public class MyThread extends Thread {
    @Override
    public void run() {
        long beginTime = System.currentTimeMillis();
        int count = 0;
        for (int i = 0; i < 500000000; i++) {
            //Thread.yield();这里是测试用的,
            count = count + (i + 1);
        }
        long endTime = System.currentTimeMillis();
        System.out.println("用时:" + (endTime - beginTime) + "毫秒!");
    }
}

执行代码:

public class Main {
    public static void main(String[] args) {
        MyThread thread = new MyThread();
        thread.start();
    }
}

执行结果(第一个为注释版本,第二个为去掉注释):

 

源码地址:https://github.com/lilinzhiyu/threadLearning

本文内容是书中内容兼具自己的个人看法所成。可能在个人看法上会有诸多问题(毕竟知识量有限,导致认知也有限),如果读者觉得有问题请大胆提出,我们可以相互交流、相互学习,欢迎你们的到来,心成意足,等待您的评价。

 

以上是关于1.9yield方法的主要内容,如果未能解决你的问题,请参考以下文章

SnippetsLab for Mac 1.9 中文共享版 – 强大的代码收藏管理工具

线程方法区别

C# 使用IENUMERABLE,YIELD

Magento 1.9 cron运行,但停在一个方法上

Java开发面试技能介绍,mysqlnavicat还原数据

Django 1.9:为 QuerySet 创建复杂的自定义过滤器方法