首页
学习
活动
专区
圈层
工具
发布

eclipse.ini:修改-vm参数让eclipse可以直接锁定到任务栏

https://blog.csdn.net/10km/article/details/53366058 一般的程序,运行时如果没有锁定在任务栏,鼠标右击程序图标时右键菜单中都会显示”将此程序锁定到任务栏...我们知道,${eclipse安装目录}/eclipse.ini文件用于设置eclipse的运行参数(Runtime Option), 在eclipse.ini中增加-vm可以设置eclipse使用的...比如我的eclipse.ini中就如下在第一行用-vm指定使用jdk1.8.0_111版本(我的系统中安装了1.6,1.7,1.8三个jdk版本) -vm C:/Program Files/Java/jdk1.8.0...但这样直接指定java虚拟机程序(.exe)的方式就会导致在windows下无法将eclipse锁定到任务栏的问题。...解决问题的办法也很简单,将上面的-vm参数中/javaw.exe删除 -vm C:/Program Files/Java/jdk1.8.0_111/bin 为什么不加javaw.exe eclipse也可以运行

1.3K20

内存溢出及解决方案

什么是内存溢出 JVM运行过程中,程序不断的申请内存空间用于保存运行时数据,当程序申请的内存空间系统无法满足时,就会抛出内存溢出错误。...也非常多见,尤其是在运行时存在大量动态类型生成的场合;类似 Intern 字符串缓存占用太多空间,也会导致 OOM 问题。...解决方案:增加jvm的内存大小。其中"-Xms128M"为初始内存,"-Xmx256M"为最大内存。...-Xmx2048m -Xms2048m 最后重要提示: 但是,对于内存泄漏问题,无法通过设置启动参数的方式来解决,这种情况下增加堆内存大小只会延缓OOM的出现时间,治标不治本。...也不推荐一开始就将堆内存大小设置的很大,这样会掩盖测试期间可能出现的问题,导致线上问题的出现。 对于这种情况,我们应该对程序中可能出现内存泄漏的地方进行优化。

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    内存溢出及解决方案

    什么是内存溢出 JVM运行过程中,程序不断的申请内存空间用于保存运行时数据,当程序申请的内存空间系统无法满足时,就会抛出内存溢出错误。...也非常多见,尤其是在运行时存在大量动态类型生成的场合;类似 Intern 字符串缓存占用太多空间,也会导致 OOM 问题。...解决方案:增加jvm的内存大小。其中"-Xms128M"为初始内存,"-Xmx256M"为最大内存。...-Xmx2048m -Xms2048m 最后重要提示: 但是,对于内存泄漏问题,无法通过设置启动参数的方式来解决,这种情况下增加堆内存大小只会延缓OOM的出现时间,治标不治本。...也不推荐一开始就将堆内存大小设置的很大,这样会掩盖测试期间可能出现的问题,导致线上问题的出现。 对于这种情况,我们应该对程序中可能出现内存泄漏的地方进行优化。

    1.7K21

    windows常用进程

    二、附加的系统进程 这些进程不是必要的,你可以根据需要通过服务管理器来增加或减少 1、mstask.exe允许程序在指定时间运行。...这是用户外壳程序,即我们熟悉的任务栏、桌面等。该进程对于Windows 的正常运行所起的作用并不像我们想像的那么重要,并且可以从任务管理器中停止(并重新启动)它,而且通常不会给系统带来任何副作用。...任务计划程序服务,负责在用户预定的时间运行任务。 Smss.exe - 您无法从任务管理器中结束此进程。 这是会话管理器子系统,负责启动用户会话。...后台打印程序服务负责管理发送到后台的打印/传真作业。 Svchost.exe - 您无法从任务管理器中结束此进程。...当第一个客户端应用程序进行连接时,该进程将进行初始化,或者当管理应用程序请求该进程的服务时,该进程会不断地进行初始化 许多无法从任务管理器中结束的进程都可以使用资源工具箱实用工具 kill.exe来结束

    1.8K30

    简单聊聊 Java 虚拟机栈!

    栈绝对算的上是 JVM 运行时数据区域的一个核心,除了一些 Native 方法调用是通过本地方法栈实现的(后面会提到),其他所有的 Java 方法调用都是通过栈来实现的(也需要和其他运行时数据区域比如程序计数器配合...方法调用的数据需要通过栈进行传递,每一次方法调用都会有一个对应的栈帧被压入栈中,每一个方法调用结束后,都会有一个栈帧被弹出。...栈空间虽然不是无限的,但一般正常调用的情况下是不会出现问题的。不过,如果函数调用陷入无限循环的话,就会导致栈中被压入太多栈帧而占用太多空间,导致栈空间过深。...简单总结一下程序运行中栈可能会出现两种错误: StackOverFlowError: 若栈的内存大小不允许动态扩展,那么当线程请求栈的深度超过当前 Java 虚拟机栈的最大深度的时候,就抛出 StackOverFlowError...OutOfMemoryError: 如果栈的内存大小可以动态扩展, 如果虚拟机在动态扩展栈时无法申请到足够的内存空间,则抛出OutOfMemoryError异常。

    45620

    可执行文件名中包含 install 或 setup

    问题描述 在 Windows Vista+ 系统下,若 EXE 文件名中包含有「install」、「update」或「setup」等字样,可能出现如下问题: 每次软件运行完退出后会弹出「程序兼容性助手...在 Vista+ 的操作系统下任务栏右键该程序缺少「将此程序锁定到任务栏」和软件名同名项。 程序名 运行时任务栏右键 a.exe ? setup.exe ?...你的程序没打算要求管理员权限的,但是运行的时候却弹 UAC 了。 完全相同的两个 EXE 文件,名字不一样: ?...问题分析 简而言之,上述现象发生的原因是 Windows Vista+ 系统的「安装程序检测」机制认为文件名中包含「install」、「update」或「setup」等字样,且没有在 Manifest...文件中显式指定 requestedExecutionLevel 的 32 位可执行程序是安装包,会主动为安装包弹出 UAC 提权申请,而「程序兼容性助手」会监控安装包的执行情况,如果它没有在「添加或删除程序

    79310

    可执行文件名中包含 install 或 setup

    问题描述 在 Windows Vista+ 系统下,若 EXE 文件名中包含有「install」、「update」或「setup」等字样,可能出现如下问题: 每次软件运行完退出后会弹出「程序兼容性助手」...在 Vista+ 的操作系统下任务栏右键该程序缺少「将此程序锁定到任务栏」和软件名同名项。...| 程序名 | 运行时任务栏右键 | |—————-|———————————————————| | a.exe | | | setup.exe | | 你的程序没打算要求管理员权限的,但是运行的时候却弹...完全相同的两个 EXE 文件,名字不一样: 问题分析 简而言之,上述现象发生的原因是 Windows Vista+ 系统的「安装程序检测」机制认为文件名中包含「install」、「update」或「setup...」等字样,且没有在 Manifest 文件中显式指定 requestedExecutionLevel 的 32 位可执行程序是安装包,会主动为安装包弹出 UAC 提权申请,而「程序兼容性助手」会监控安装包的执行情况

    93210

    醒酒菜:动画图解核心内存区--堆

    端午佳节一下子就过完了,大家是不是还沉迷在假期的欢乐气氛中无法自拔?今天阿Q为大家准备了上好的“醒酒菜”——JVM运行时数据区的核心内存区——堆。...堆的概述 一般来说: 一个Java程序的运行对应一个进程; 一个进程对应着一个JVM实例(JVM的启动由引导类加载器加载启动),同时也对应着多个线程; 一个JVM实例拥有一个运行时数据区(Runtime...类,为饿汉式单例类); 一个运行时数据区中的堆和方法区是多线程共享的,而本地方法栈、虚拟机栈、程序计数器是线程私有的。...在方法结束后,堆中的对象不会马上被移除,仅仅在垃圾收集的时候才会被移除。堆,是GC(Garbage Collection,垃圾收集器)执行垃圾回收的重点区域。...❞ 启动程序 启动程序之后去jvisualvm查看 ? 一旦堆区中的内存大小超过-Xmx所指定的最大内存时,将会抛出OOM(Out Of MemoryError)异常。

    51310

    醒酒菜:动画图解核心内存区--堆

    端午佳节一下子就过完了,大家是不是还沉迷在假期的欢乐气氛中无法自拔?今天阿Q为大家准备了上好的“醒酒菜”——JVM运行时数据区的核心内存区——堆。...堆的概述 一般来说: 一个Java程序的运行对应一个进程; 一个进程对应着一个JVM实例(JVM的启动由引导类加载器加载启动),同时也对应着多个线程; 一个JVM实例拥有一个运行时数据区(Runtime...类,为饿汉式单例类); 一个运行时数据区中的堆和方法区是多线程共享的,而本地方法栈、虚拟机栈、程序计数器是线程私有的。...在方法结束后,堆中的对象不会马上被移除,仅仅在垃圾收集的时候才会被移除。堆,是GC(Garbage Collection,垃圾收集器)执行垃圾回收的重点区域。...❞ 启动程序 启动程序之后去jvisualvm查看 一旦堆区中的内存大小超过-Xmx所指定的最大内存时,将会抛出OOM(Out Of MemoryError)异常。

    26310

    深入浅出JVM(二)之运行时数据区和内存溢出异常

    ,栈帧信息(返回地址,动态连接,附加信息) 图片从Java程序来看:在调用堆栈的所有方法都同时处于执行状态(比如:main方法中调用其他方法)从执行引擎来看:当前线程只有处于栈顶的栈帧才是当前栈帧,此栈帧对应的方法为当前方法...(程序计数器的值)异常调用完成: 遇到异常未捕获(未搜索到匹配的异常处理器)以异常调用完成方式退出方法,不会在栈帧中保存信息,通过异常处理器来确定附加信息增加一些《Java虚拟机规范》中没有描述的信息在栈帧中....StackOOM.main(StackOOM.java:25) */操作系统为(JVM)进程分配的内存大小是有效的,这个内存再减去堆内存,方法区内存,程序计数器内存,直接内存,虚拟机消耗内存等,剩下的就是虚拟机栈内存和本地方法栈内存此时增加了线程分配到的栈内存大小...,直接从本地内存分配任意内存本地方法库本地方法栈中登记native修饰的方法,由执行引擎来加载本地方法库总结 图片本片文章详细说明jvm运行时内存区域以及可能发生的内存溢出异常线程私有的程序计数器保存要执行的字节码指令...,程序计数器不会发生内存溢出异常线程私有的栈服务于方法,每个方法代表一个栈帧,方法的调用与调用结束标志着栈帧的入栈与出栈,栈帧中的局部变量表、操作数栈、方法返回地址、动态连接(运行时常量池引用)、附加信息是为了帮助更好的服务方法

    38631

    Windows 桌面一键切换工具 Virgo

    背景 微软的虚拟桌面是很棒的功能,但快捷键 Ctrl + Win + ← → 需要两只手才能按出; 应用支持也不友好,如果在第一个桌面中已经打开了 QQ、微信,那么当你在第二个桌面中点击任务栏的图标时,...安装包 解压发现一个 virgo.exe 文件,大小只有 8 KB,拿出来直接就可以运行 顺利运行的话此时不会发生任何事情,仅在任务栏小图标多了一个 1 此时可以使用快捷键切换桌面了,使用方法如下 快捷键...文件复制一份,改名 make.exe 并将该目录加入到系统目录中 至此我们已经可以运行 make 命令了 编译源码获取可执行文件 打开 git bash 终端 克隆仓库并编译生成 exe 文件:...git clone https://github.com/papplampe/virgo.git cd virgo make 即可得到和官方相同的 exe 文件 修改源码 官方工具使用中的问题 官方的...register_hotkey(unsigned id, unsigned mod, unsigned vk) { RegisterHotKey(NULL, id, mod, vk); } 之后重新编译 make 得到的程序运行时会忽略冲突的快捷键

    3.4K21

    【Tomcat】Tomcat配置JVM参数步骤

    所以适当的增加jvm申请的内存大小来减少其回收的次数甚至不回收,就会是卡的现象有明显改善。...Windows下,在文件/bin/catalina.bat,Unix下,在文件/bin/catalina.sh的前面,增加如下设置: JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存...有一次,网站突然很慢,jstack一看,原来是自己写的URLConnection连接太多没有释放,改一下程序就OK了。...java-Xms64m-Xmx256mTest -Xms是设置内存初始化的大小 -Xmx是JVM内存设置中设置最大能够使用内存的大小(最好不要超过物理内存大小) 在weblogic中,可以在startweblogic.cmd...注意: 1.增加Heap的大小虽然会降低GC的频率,但也增加了每次GC的时间。并且GC运行时,所有的用户线程将暂停,也就是GC期间,Java应用程序不做任何工作。

    2.8K30

    Java Web之Tomcat调优

    ,但运行时性能和内存管理效率不高,通常用于客户端应用程序或开发调试,在 32 位环境下直接运行 Java 程序默认启用该模式。...-Xmx:表示最大 Java 堆大小,当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃,因此一般建议堆的最大值设置为可用内存的最大值的80%。...如何知道我的 JVM 能够使用最大值,使用 java -Xmx512M -version 命令来进行测试,然后逐渐的增大 512 的值,如果执行正常就表示指定的内存大小可用,否则会打印错误信息,默认值为物理内存的...-XX:+DisableExplicitGC:在 程序代码中不允许有显示的调用“System.gc()”。...因此,对于特定的应用程序,应该通过测试来判断增加 CMS 线程数是否真的能够带来性能的提升。

    1.3K40

    Springboot2 + Micrometer监控指标详解

    JVM 基本信息概述图片Start time:  JVM启动时间 - 即:根据该指标可以知道目前程序启动的时间Uptime:  JVM运行时间  - 即:根据该指标可以知道目前程序运行时长3.2....表示Java堆内存的最大可用空间,也就是-Xmx参数指定的最大堆内存值。pool.max:最大可用的堆内存大小。表示当前JVM实例中可用的最大堆内存大小,一般是物理内存的一部分。...表示当前JVM实例中可用的最大非堆内存大小,一般是物理内存的一部分。Used:已使用的非堆内存大小。表示当前已经分配给Java非堆内存空间的大小。Init:初始非堆内存大小。...垃圾回收线程就是一个经典的守护线程,当我们的程序中不再有任何运行的Thread,程序就不会再产生垃圾,垃圾回收器也就无事可做,所以当垃圾回收线程是JVM上仅剩的线程时,垃圾回收线程会自动离开。...如果Class delta指标的值过大,说明有太多的类被加载和卸载,可能会导致JVM性能下降。

    8.9K103

    程序员如何优化 Java GC

    (使用-server参数) 系统中没有残留超时日志之类的错误日志 换句话说,如果你在运行时没有手动设置内存大小并且打印出了过多的超时日志,那你就需要对系统进行GC优化。...Java GC参数的设置也是这个道理,设置好几个参数并不会提升GC执行的速度,反而会使它变得更慢。...在创建文件的过程中,所有Java程序都将暂停,因此,不要再系统执行过程中创建该文件。 你可以在互联网上搜索heap dump的详细说明。...现在来看一下FGC( 从应用程序启动到采样时发生 Full GC 的次数)和FGCT(从应用程序启动到采样时 Full GC 所用的时间(秒)),计算FGCT/FGC会得出,平均每次老年代的GC耗时19.68s...设置内存大小 下面展示了内存大小、GC运行次数和GC运行时间之间的关系: 大内存空间 减少了GC的次数 提高了GC的运行时间 小内存空间 增多了GC的次数 降低了GC的运行时间 关于如何设置内存的大小,

    1.2K30

    22.4k stars一款不错的开源性能监控软件

    今天推荐的这个项目是「TrafficMonitor」,是一款用于 Windows 平台的网速监控悬浮窗软件,可以显示当前网速、CPU 及内存利用率,支持嵌入到任务栏显示,支持更换皮肤、历史流量统计等功能...历史流量统计 硬件信息监控 插件系统 从1.80版本开始,TrafficMonitor加入了温度监控功能,如果你不需要温度监控功能,并且在使用1.80以上版本中遇到了问题,建议下载不含温度监控的版本(Lite...TrafficMonitor依赖于Microsoft Visual C++ 运行环境,如果程序启动时提示“找不到MSVC*.dll”,请点击以下链接下载并安装Microsoft Visual C++ 运行环境...主悬浮窗: 右键菜单: 任务栏窗口: 多彩皮肤: 从 1.82 版本开始增加了插件系统,插件 dll 必须放在 “TrafficMonitor.exe” 同级目录的 “plugins” 目录下。...程序启动后,插件会自动加载。可以在右键菜单 “更多功能”——“插件管理” 中查看并管理已加载的插件。 地址:https://github.com/zhongyang219/TrafficMonitor

    66720

    jvm系列(九):如何优化Java GC「译」

    (使用-server参数) 系统中没有残留超时日志之类的错误日志 换句话说,如果你在运行时没有手动设置内存大小并且打印出了过多的超时日志,那你就需要对系统进行GC优化。...Java GC参数的设置也是这个道理,设置好几个参数并不会提升GC执行的速度,反而会使它变得更慢。...在创建文件的过程中,所有Java程序都将暂停,因此,不要再系统执行过程中创建该文件。 你可以在互联网上搜索heap dump的详细说明。...现在来看一下FGC( 从应用程序启动到采样时发生 Full GC 的次数)和FGCT(从应用程序启动到采样时 Full GC 所用的时间(秒)),计算FGCT/FGC会得出,平均每次老年代的GC耗时19.68s...设置内存大小 下面展示了内存大小、GC运行次数和GC运行时间之间的关系: 大内存空间 减少了GC的次数 提高了GC的运行时间 小内存空间 增多了GC的次数 降低了GC的运行时间 关于如何设置内存的大小,

    1.6K120

    java.lang.OutOfMemoryError: PermGen spacejava.lang.OutOfMemoryError: PermGen space

    : PermGen space 导致OutOfMemoryError异常的常见原因有以下几种: 内存中加载的数据量过于庞大,如一次从数据库取出过多数据; 集合类中有对对象的引用,使用完后未清空,使得JVM...的方法有如下几种: 一、增加jvm的内存大小。...二、 优化程序,释放垃圾。 主要包括避免死循环,应该及时释放种资源:内存, 数据库的各种连接,防止一次载入太多的数据。导致java.lang.OutOfMemoryError的根本原因是程序不健壮。...因此,从根本上解决Java内存溢出的唯一方法就是修改程序,及时地释放没用的对象,释放内存空间。 遇到该错误的时候要仔细检查程序,嘿嘿,遇多一次这种问题之后,以后写程序就会小心多了。...Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误, 这种错误常见在web服务器对JSP进行

    90520

    Java并发编程学习16-探究任务和执行策略间的隐性耦合,解锁线程池大小设置的正确姿势

    我们来假设下,如果将运行时间较长的与运行时间较短的任务混合在一起,会怎样? 我们知道,在 Java 中线程是由操作系统来进行调度的,而操作系统的调度策略通常是基于时间片轮转或者优先级抢占等算法。...当一个线程运行时间过长时,它可能会占用太多的 CPU 时间片,导致其他线程没有机会执行,从而影响了整个系统的响应速度和吞吐量。...例如,在一个任务中检查某个条件是否满足,并在另一个任务中修改该条件,就可能会出现竞态条件。如果没有使用适当的同步措施来保护这些共享资源,将会导致程序出现不可预测的错误。...如果您的应用程序包含大量的 I/O 密集型任务(如网络请求、文件读写等),则可以适当增加线程池大小,以充分利用空闲时间。...内存大小和硬件资源: 理想的线程池大小还应该考虑可用的内存大小和其他硬件资源,以确保不会过度消耗系统资源。 要想正确地设置线程池的大小,必须分析 计算环境、资源预算 和 任务的特性。

    24121
    领券