java
小糖碎
这个作者很懒,什么都没留下…
展开
-
多线程Thread的优先级
多线程的优先级,即在多个线程中先执行哪个线程。线程的优先级在1-10之间,可以直接设置数字。以以下的基准做设置:1、NORM_PRIORITY 默认52、MIN_PRIORITY 13、MAX_PRIORITY 10这个优先级仅仅为一个概率,而不代表先后顺序。public class PriorityTest { public static void main(String[] args) { System.out.println(Thread.currentThread().getP原创 2020-10-26 20:43:31 · 784 阅读 · 0 评论 -
多线程的阻塞:join插队
join为合并线程,待此线程执行完成后,再执行其它线程,其它线程阻塞。相当于插队。与sleep不同的是,join是一个成员方法,使用时候需要用Thread的对象来使用。public class BlockedSleep01 { public static void main(String[] args) { //一份资源 Web12306 wb = new Web12306(); System.out.println(Thread.currentThread().getName());原创 2020-10-26 20:39:01 · 147 阅读 · 0 评论 -
多线程中的暂停 :礼让yield
礼让线程,让当前正在执行的线程暂停。礼让线程不是阻塞线程,而是将线程从运行状态转入就绪状态。让cpu重新调度。yield和sleep方法相同的是:yield也是静态方法。原创 2020-10-22 20:02:40 · 147 阅读 · 0 评论 -
多线程中的暂停sleep
sleep(时间)指定当前线程阻塞的毫秒数。时间一到,重新进入就绪状态。sleep存在异常InterruptedException。sleep时间达到后线程进入就绪状态。sleep可以模拟网络延时、倒计时等。sleep模拟网络延时,放大了发生问题的可能性。每一个对象都有一个锁,sleep不会释放锁。import java.text.SimpleDateFormat;import java.util.Date;/** * sleep模拟倒计时 * @author xc * */pub原创 2020-10-21 21:15:34 · 271 阅读 · 0 评论 -
多线程中线程的终止
终止线程1、线程正常执行完毕 -->次数2、外部干涉–>加入标识不要使用stop destroy(两个已过时)public class TerminateThread implements Runnable { //1、加入标识 标记线程体是否可以运行 private boolean flag = true; private String name; public TerminateThread(String name) { super(); this.name原创 2020-10-21 20:02:24 · 108 阅读 · 0 评论 -
线程的简化,lambda表达式。
lambda表达式的实质是:函数编程的概念引用lambda表达式的好处:1、避免匿名内部类定义过多2、简化线程(用一次)的使用new Thread(()->System.out.println(“多线程学习…”)).start();例:public class LambdaThread { public static void main(String[] args) { //jdk8 简化 使用lambda new Thread(()-> { for(int i原创 2020-10-16 21:25:45 · 136 阅读 · 0 评论 -
使用Runnable接口实现多线程时候的静态代理
静态代理存在真实角色和代理角色。他们都实现公共接口。例如如下:new WeddingCompany(new You()).happyMarry();相当于 new Thread(线程对象).start();public class StaticProxy { public static void main(String[] args) { new WeddingCompany(new You()).happyMarry(); //new Thread(线程对象).start();原创 2020-10-16 20:20:08 · 218 阅读 · 0 评论 -
多线程Thread的实现方法。通过继承Thread和实现Runnable接口。
创建线程方式一:1、创建:继承Thread+重写run2、启动:创建子类对象+start例:public class StartThread extends Thread { /** * 线程的入口点 */ @Override public void run() { for(int i = 0;i < 20;i++) { System.out.println("一边听歌"); } } public static void main(String[原创 2020-10-14 20:15:29 · 368 阅读 · 0 评论 -
Java Math.ceil()方法
Math.ceil() 方法可对一个数进行上舍入,返回值大于或等于给定的参数。原创 2020-10-14 19:45:34 · 932 阅读 · 0 评论 -
Java中transient的用法
某一个数据比较敏感,我们不需要存储下来。即指该数据不需要序列化。例如:用户的密码private transient String pwd;原创 2020-10-03 20:48:17 · 203 阅读 · 0 评论