美文网首页
2018-05-25☞线程

2018-05-25☞线程

作者: 6点钟的太阳 | 来源:发表于2018-05-25 22:02 被阅读0次

    今天继续昨天的线程的基本操作

    昨天说到的有创建,启动、终止、中断、挂起

    今天学习到的是join和yeild,

     join是主线程等待其它线程结束在执行,yeild礼让,但是不一定让出去了

    守护线程:后台执行如GC setDaemon(true)

    优先级:setPriority()

    基本线程同步操作

    synchronize:制定枷锁对象,给定对象枷锁,进入同步块需要获取锁

    给实体类的方法默认的为实例对象本身,静态方式指的是类对象

    Object.wait、Object.notify、Object.notifyAll

    wait,获取monitor的线程释放锁,进入等待状态(不同于Thread.sleep 不释放锁)

    notify/notifyAll通知等待线程可以去争取锁了

    jvm里的内存模型

    JMM---主内存存放我们的共享数据、线程工作内存需要数据从主内存读取创建副本

              操作完后再把值赋值给主内存数据

    3个概念:原子性、有序性、可见性

    原子性:操作不可打断,一致性,要么执行要么不执行

                  一般我们用synchronize、lock保证原子性

    有序性、可见性:分别是顺序和共享数据的操作读写都可见,我们一般在变量上添加

    valatile关键字或者上面的同步块或者lock(并发时没法保证这些的)

    ----------=----------------华丽的的end线坚持了一周了,继续加油-----------------------------

    相关文章

      网友评论

          本文标题:2018-05-25☞线程

          本文链接:https://www.haomeiwen.com/subject/zaxpjftx.html