博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Eclipse启动JVM机制
阅读量:5295 次
发布时间:2019-06-14

本文共 1646 字,大约阅读时间需要 5 分钟。

1.Eclipse启动的时候,会启动一个JVM来运行eclipse(因为Eclipse是Java代码实现的)

2.Eclipse启动一个带main的主类的时候,会单独启动一个JVM来运行他。
3.Ecpilse启动多个带main的主类的时候,每个类都会有一个JVM。

class 1:

public class VectorTest1 {    Vector
v=new Vector
(100);/////*// * ConcurrentLinkedQueue是“线程安全”的队列,而LinkedList是非线程安全的。// *// * 下面是“多个线程同时操作并且遍历queue”的示例// * (01) 当queue是ConcurrentLinkedQueue对象时,程序能正常运行。// * (02) 当queue是LinkedList对象时,程序会产生ConcurrentModificationException异常。// * // TODO: queue是LinkedList对象时,程序会出错。 //private static Queue
queue = new LinkedList
(); public static Queue
queue = new ConcurrentLinkedQueue
(); public static void main(String[] args){ for(int i=0;i<1000;i++) { queue.add("job"+i+"'s key value timestamp"); System.out.println(i); } }

class 2:

```
public class FixedThreadExecutorTest {

public static void createPoolAndTread() {    ScheduledExecutorService pool = Executors.newScheduledThreadPool(5);    pool.scheduleAtFixedRate(new Runnable() {        @Override        public void run() {            if(!VectorTest.queue.isEmpty())            System.out.println(Thread.currentThread().getName()+" Send message to graphite "+VectorTest.queue.poll());            else {                System.out.println("No Graphite message to send !!");            }        }    },0, 10, TimeUnit.MILLISECONDS);}public static void main(String[] args) throws InterruptedException {    VectorTest.start();    createPoolAndTread();}

}

```

class1和class2同时启动,我们可以发现,class2的进程,不会获得ConcurrentLinkedQueue的任何信息。说明不是在同一个jvm。

转载于:https://www.cnblogs.com/WinseterCheng/p/8671427.html

你可能感兴趣的文章
hive简介
查看>>
php使用位与运算符【&】位或运算符【|】实现权限管理
查看>>
(转载)Qt:习惯性Qt创建工程的步骤
查看>>
cron
查看>>
IIS上传大文件
查看>>
Neral的前言
查看>>
Centos7 安装高版本php
查看>>
RESTful API 设计指南
查看>>
python-高级编程-05-异步IO
查看>>
MySQL连接服务端的几种方式
查看>>
Floyd
查看>>
Uboot之tftp流程
查看>>
tensorflow的数据读取机制
查看>>
使用solid works 助力NBA | 操作案例
查看>>
2019年春节第一天上班
查看>>
task_statm反映虚拟内存,物理内存
查看>>
更改Visual Studio 2010的主题设置
查看>>
ecslipe cdt lib link
查看>>
Linux下的截图方法
查看>>
idea从gitlab获取代码
查看>>