美文网首页
集合、多线程、事件模型

集合、多线程、事件模型

作者: 墨_0b54 | 来源:发表于2020-05-06 08:42 被阅读0次

JVM内存

image.png

运算符

  • & 按位与
  • | 按位或
  • ~ 取反
  • ^ 异或
例:^异或运算符号。
运算规则是:两个数转为二进制,然后从高位开始比较,如果相同则为0,不相同则为1。
17:0001 0001
5:  0000 0101
结果:0001 0100 转10进制:20

多线程实现方式

Java多线程实现方式主要有四种:
1、继承Thread类
2、实现Runnable接口
3、实现Callable接口通过FutureTask包装器来创建Thread线程
4、使用ExecutorService、Callable、Future实现有返回结果的多线程。

java事件模型

不包括事件过程:面向对象的语言里没有“过程”,面向过程的语言里没有“对象”

  1. 事件源(Event Source):即事件发生的场所,就是指各个组件,如按钮等,点击按钮其实就是组件上发生的一个事件;
  2. 事件(Event):事件封装了组件上发生的事情,比如按钮单击、按钮松开等等;
  3. 事件监听器(Event Listener):负责监听事件源上发生的特定类型的事件,当事件到来时还必须负责处理相应的事件;

collection和map

collection和map没有关系

  • collection


    collection.png
  • map


    map.png

start(),run()两种方法的区别

run方法是线程内重写的一个方法,start一个线程后使得线程处于就绪状态,当jvm调用的时候,线程启动会运行run。run函数是线程里面的一个函数不是多线程的.

  1. start方法:启动线程,是真正实现了多线程, 通过调用Thread类的start()方法来启动一个线程,这时此线程处于就绪(可运行)状态,并没有运行,一旦得到cpu时间片,就开始执行run()方法。但要注意的是,此时无需等待run()方法执行完毕,即可继续执行下面的代码。所以run()方法并没有实现多线程。
  2. run方法:只是类的一个普通方法而已,如果直接调用Run方法,程序中依然只有主线程这一个线程,其程序执行路径还是只有一条,还是要顺序执行,还是要等待run方法体执行完毕后才可继续执行下面的代码。

相关文章

  • 集合、多线程、事件模型

    JVM内存 运算符 & 按位与 | 按位或 ~ 取反 ^ 异或 多线程实现方式 Java多线程实现方式主要有四种:...

  • Reactor线程模型【原理笔记】

    前言 Reactor模型是基于事件驱动的线程模型,可以分为Reactor单线程模型、Reactor多线程模型、主从...

  • Backbone 教程(四):Collection集合

    集合是模型的有序组合,我们可以在集合上绑定 "change" 事件,从而当集合中的模型发生变化时fetch(获得)...

  • SEDA

    高并发 -多线程模型 -事件驱动模型 对请求采用事件(通常是IO事件)驱动方式处理, 其底层实现依赖于非阻塞IO和...

  • Netty篇:Reactor线程模型和NioEventLoop,

    Reactor线程模型 Reactor模式是一种典型的事件驱动的编程模型,主要有单线程模型,多线程模型以及主从线程...

  • Java基础

    Java基础 集合基础 集合框架 多线程基础 多线程框架 反射 代理 集合基础 ArrayList LinkedL...

  • 学习方向

    多线程,并发,锁机制,集合内部实现及原理,OOM,CPU性能分析,JVM调优,内存模型,类加载,spring,事务...

  • Apache Thrift系列详解(二) - 网络服务模型

    前言 Thrift提供的网络服务模型:单线程、多线程、事件驱动,从另一个角度划分为:阻塞服务模型、非阻塞服务模型。...

  • Thrift源码分析(TThreadPoolServer)

    Thrift提供的网络服务模型:单线程、多线程、事件驱动,从另一个角度划分为:阻塞服务模型、非阻塞服务模型。 阻塞...

  • Java高级面试题目

    必须深⼊了解的知识点:a. java集合数据结构b. jvm:gc、内存模型、堆分代c. 多线程:volatile...

网友评论

      本文标题:集合、多线程、事件模型

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