摘要:
1.什么是 Java 反射? 就是正在运行,动态获取这个类的所有信息 2.反射机制的作用 a.反编译:.class-->.java b.通过反射机制,访问 Java 对象的属性,方法,构造方法等 3.反射机制的应用场景 Jdbc 加载驱动 SpringIOC 实现 Java 框架 4.创建对象的两种 阅读全文
摘要:
TCP测试服务端: TCP测试客户端: 阅读全文
摘要:
UPD测试服务端: UPD测试客户端: 阅读全文
摘要:
什么是 Socket? Socket 就是为网络服务提供的一种机制。 通讯的两端都有 Socket 网络通讯其实就是 Socket 之间的通讯 数据在两个 Socket 之间通过 IO 传输 1.socket 分为两种协议,一种是 TCP协议,一种是UDP协议 2.TCP与UDP的区别是什么? UD 阅读全文
摘要:
什么是线程池? 线程池是指在初始化一个多线程应用程序过程中创建一个线程集合,然后在需要执行新的任务时重用这些线程而不是新建一个线程。线程池中线程的数量通常完全取决于可用内存数量和应用程序的需求。然而,增加可用线程数量是可能的。线程池中的每个线程都有被分配一个任务,一旦任务已经完成了,线程回到池子中并 阅读全文
摘要:
ThreadLocal 提高一个线程的局部变量,访问某个线程时,拥有自己的局部变量 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。 ThreadLocal接口很简单,只 阅读全文
摘要:
Volatile 关键字的作用是变量在多个线程之间可见。 该程序,主线程中已经将传入参数改为了"false",可是程序并不会终止执行。 原因:线程之间是不可见的,线程读取的共享变量是主内存的副本(线程本地内存),没有及时读取到主内存的最新结果。 解决办法:使用Volatile 关键字解决线程之间的可 阅读全文
摘要:
java内存模型:多线程相关 JVM内存结构:堆,栈,方法区... 二者不要搞混 java内存模型简称JMM,定义了一个线程对另一个线程可见。共享变量存放在主内存中,每个线程都有自己的本地内存,当多个线程同时访问一个共享数据时,可能本地内存没有及时刷新主内存数据到本地内存中,所以就会发生线程安全问题 阅读全文
摘要:
1.原子性 一个操作或者多个操作,要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行 2.可见性 当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看的到修改的值 3.有序性 程序执行的数序顺序按照代码的先后顺序执行,如使用线程中join()来实现 阅读全文
摘要:
Java中有两种线程,一种是用户线程(前台线程),另一种是守护线程(后台线程) 当进程不存在或主线程停止,守护线程也会被停止。 使用setDeamon(true)设置子线程为守护线程。 setDeamon(true)在子线程启动前调用,否则报错。 阅读全文