一,假设有一台服务器,它的IIS上部署有一个Web应用程序-S,可以通过浏览器或其他方式进行访问。 假设有A、B、C三台电脑同时访问网站S,IIS接收到3个HTTP请求,然后分别为三个请求各建立一个线程。每个线程都有各自的线程栈,每个用户的数据都放在各自线程栈中,也只有用户线程才能取得对应线程栈中的 ...
分类:
其他好文 时间:
2018-12-19 13:02:28
阅读次数:
129
垃圾回收机制,共享变量,线程栈,cas 集合类底层(arraylist扩容问题,hashmap,concurrenthashmap) mysql引擎,b+树 tcp三次握手四次挥手,https建立连接过程 cookie和session,浏览器cookie禁用后能否用session,不同域名间是否可以 ...
分类:
其他好文 时间:
2018-12-17 02:43:09
阅读次数:
216
synchronized 同步,解决多线程 访问临界区的问题,作用于实例 ,但是 修饰 static 方法 是 作用.class 锁 volatile 变量的线程可见,换句不太恰当的话,就是扔在了线程栈外(共享区域) volatile 实例1,这里有个坑 while(flag) 会被jvm 优化 成 ...
分类:
其他好文 时间:
2018-11-29 19:52:28
阅读次数:
215
java多线程 关于内存 每个线程会有自己的线程栈,即,变量不能共享,只能传值拷贝 每个线程new出的对象全都保存在堆中,全部共享 线程的生命周期 线程具有5种状态,即新建,就绪,运行,阻塞,死亡。 新建,当new出来一个线程以后,jvm为其分配内存空间,并初始化成员变量的值 就绪,当线程调用了st ...
分类:
编程语言 时间:
2018-11-19 23:59:30
阅读次数:
341
问题描述:线上进程异常退出,查看服务器端日志,有jvm crash文件生成 一般jvm crash日志头部:问题帧 当前执行触发jvm crash的线程栈,此处可以看出为http请求线程,依旧看不出啥原因。 继续往下看,线程栈信息 此处可以看到 查看资料发现,为jdkbug: https://bug ...
分类:
其他好文 时间:
2018-11-05 16:16:32
阅读次数:
322
■ 线程池的创建 在Java中,您可以通过调整-Xss参数来调节每个线程栈的大小(64bit系统默认1024KB),当减小该值时意味着可以创建更多的线程数,但问题是JVM资源是有限的,线程不能无限创建! 从笔者开发经验来看,线程池应该是并发包中使用频率和运用场景最多的并发框架,几乎所有并发/异步执行 ...
分类:
编程语言 时间:
2018-09-04 13:45:26
阅读次数:
179
写的时候最好要设置线程名称 Thread.name,并设置线程组 ThreadGroup,目的是方便管理。在出现问题的时候,打印线程栈 (jstack -pid) 一眼就可以看出是哪个线程出的问题,这个线程是干什么的。 方法一 Thread方式通过线程组,线程名,并设置UncaughtExcepti ...
分类:
编程语言 时间:
2018-09-04 11:43:01
阅读次数:
210
非堆内存相关配置-XX:PermSize永久区初始大小-XX:MaxPermSize永久区最大大小 在JDK1.8中使用-XX:MxMetaspaceSize配置永久区最大大小-Xss线程栈大小-XX:MaxDirectMemorySize直接内存大小,默认为最大堆空间,即-Xmx。当直接内存使用量... ...
分类:
编程语言 时间:
2018-08-16 14:56:53
阅读次数:
188
线程栈状态有如下几种:1、NEW2、RUNNABLE3、BLOCKED #进入synchronized之前4、WAITING #已经进入synchronized,调用了wait()5、TIMED_WAITING #已经进去synchronized,调用了sleep()6、TERMINATED #线程结束线程锁解读:当一个线程占有一个锁的时候,线程堆栈会打印一个-locked<0x22b
分类:
编程语言 时间:
2018-08-13 15:51:52
阅读次数:
169
1. jps 显示系统中所有Hotspot虚拟机进程 2. jinfo 显示虚拟机的配置信息,可观察进程运行环境参数,包括Java System属性和JVM命令行参数 3. jstack 显示虚拟机的线程栈信息,用于生成当前JVM的所有线程快照 4. jstat 实时显示本地或远程JVM进程中类装载 ...
分类:
其他好文 时间:
2018-08-05 14:29:19
阅读次数:
149