精华内容
下载资源
问答
  • 6、int 和 Integer 有什么区别  Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 ...
  • 所以我打算直接jmap来看内存中都有什么东西 但是为什么不直接看gc日志中的Full GC频率呢 因为这个东西跟jvm内存分配和内存大小关系,而我关心的是内存积存趋势 比如说,举个极端的例子,jvm内存很小,那么肯定...
    目前有的那些jvm工具,界面都太难看了,严重影响我的调bug心情
    所以我打算直接用jmap来看内存中都有什么东西
    但是为什么不直接看gc日志中的Full GC频率呢
    因为这个东西跟jvm内存分配和内存大小有关系,而我关心的是内存积存趋势
    比如说,举个极端的例子,jvm内存很小,那么肯定每时每刻都在Full GC
    但是你的代码真的这么差吗,不一定
    但是如果条件很好,jvm内存设定的很大,那么几个月内都不会很频繁的Full GC
    但是你的代码真的这么好吗,也不一定
    所以归根结底要看内存中的对象是不是一直在累积增长
    那么jmap就是个不错的东西
    

    我们知道jmap打印的东西,jmap -histo pid是这个样的:
    在这里插入图片描述
    又臭又长
    而且下面的都是内存中只有几个的,没有价值
    所以我打算只取前9行,jmap -histo pid | head -12
    在这里插入图片描述
    但是总不能手动输出这个东西,所以我打算用crontab来定时打印它

    #!/bin/bash  
    step=5 #间隔的秒数,不能大于60  
    echo "get in loop"
    for (( i = 0; i < 55; i=(i+step) )); do  
        echo "in loop"
        oldifs="$IFS"
        IFS=$'\n'
        for lines in `jmap -histo 2866 | head -12`; do
            echo "$lines"
        done
        IFS="$oldifs"
        sleep $step  
    done
    

    但是就是不输出!!!!!
    为什么!!!!
    后来我想起来了,会不会是这个crontab运行sh时,是跟当前的java环境不相关的,于是我尝试加了下面这段

    export JAVA_HOME=/opt/jdk1.8.0_181
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    

    输出了。。。。
    但是还没完,这个输出是不规范的,没有办法用excel查看,所以我要再写个脚本,来将输出的东西,前9行累加,生成新的文件

    #!/bin/bash
    arr=(1 2 3 4 5 6 7 8 9)
    tempSum=0
    cat jmap.jmap | while read line
    do
            echo "${line}"
            for element in ${arr[@]}
            do
                    flag=${element}:
                    result=$(echo $line | grep "${flag}")
                    if [[ "$result" != "" ]]
                    then
                            echo "catch:${flag}"
                            tempNum=`echo "${line}" | awk '{print $3}'`
                            let tempSum=$tempSum+$tempNum
                            if [[ "$flag" == "9:" ]]
                            then
                                    echo "echo sum:${tempSum}"
                                    echo "${tempSum}" >> result.jmap
                                    let tempSum=0
                            fi
                    fi
            done
    done
    

    这个脚本就是将每一次输出的9行都累加,然后echo>>到新的文件
    这样一来,生成的新的文件就能通过excel打开了
    然后就可以这么看
    在这里插入图片描述
    好像并没有出现一直上升,不下降的趋势
    由此可见代码应该没有出现内存泄漏的情况,或者某些资源不释放导致永久代对象过多的情况

    展开全文
  • OnDraw和OnPaint之间有什么关系 如何弹出右键菜单 如何显示级联菜单 如何给系统菜单添加一个菜单项 如何将窗体顶端标题栏的右键菜单屏蔽掉 如何动态增加或删除菜单 如何使菜单项前带图标 如何隐藏CScrollView中的...
  • 1.9 奇异值与特征值有什么关系? 4 1.10 机器学习为什么要使用概率? 4 1.11 变量与随机变量有什么区别? 4 1.12 常见概率分布? 5 1.13 举例理解条件概率 9 1.14 联合概率与边缘概率联系区别? 10 1.15 条件概率的...
  • 八、还人问我为什么有的自适应模糊PID里相加的模块而的没有? 相加的是与PID的初值相加。最后出来的各项参数Kp=△Kp Kp0,Ki=△Ki Ki0,Kd=△Kd Kd0。Kp0,Ki0,Kd0分别为PID的初值。的系统并没有设定PID的...
  • 软件工程教程

    热门讨论 2012-07-06 23:10:29
    问:有什么应用价值? 答: 本项目是一个能提高用户参与和娱乐程序的项目,具有一定的使用价值。 追求的结果--钢琴练奏师 1.2 项目背景 传统的音乐播放器功能单一,用户对音乐缺少参与感,本项目志在提高用户对...
  • 现在变频空 常用的IPM模块日本的三菱和三洋IPM系列。 三、直流变频空调的原理 直流变频空调其关键在于采用了无刷直流电机作为压缩机,其控制电路与交流变频控制器基本一样。 1、直流变频空调的基本原理 我们...
  • 现在很疑惑,看起来内存空间分配并没有超出预定范围,而且按道理说,局部静态数组应该是在RAM里面开辟存储空间,跟堆栈应该也没有半毛钱关系呀,为什么会破坏堆栈。我试着把栈空间该大一些,还是无济于事。 请问...
  • 既然传统经济学的各个领域同企业都某种程度的关系,管理经济学当然要从所有这些领域中汲取有用的东西。各个领域同企业关系实际上深浅不一,这些领域与管理经济学的关系在程度上也就不同。举例来说,在管理经济学中...
  • JavaScript王者归来

    2013-01-10 11:30:48
    3.1 我能用什么来编写脚本--适合编写JavaScript的文本编辑器 3.2 来自浏览器的支持 3.2.1 主流浏览器 3.2.2 非主流浏览器 3.3 集成开发环境 3.3.1 什么是集成开发环境 3.3.2 我需要集成开发环境吗 3.3.3 适合...
  • 1.1 关系型数据库有什么问题 1 1.2 关系型数据库简单回顾 5 1.2.1 RDBMS:出类拔萃与表现平平 6 1.2.2 互联网的规模 12 1.3 Cassandra的电梯间演讲 13 1.3.1 50个字介绍Cassandra 13 1.3.2 分布式与无...
  • 首先要理解基本的原理,2台电脑间实现TCP通讯,首先要建立起连接,在这里要提到服务器端与客户端,两个的区别通俗讲就是主动与被动的关系,两个人对话,肯定是先人先发起会话,要不然谁都不讲,谈什么话题,呵呵!...
  • 首先要理解基本的原理,2台电脑间实现TCP通讯,首先要建立起连接,在这里要提到服务器端与客户端,两个的区别通俗讲就是主动与被动的关系,两个人对话,肯定是先人先发起会话,要不然谁都不讲,谈什么话题,呵呵!...
  •  本书适合于从未学习过任何编程语言的新手,以及学习c++多年,仍旧不能融会贯通的读者,对于正在使用c++进行开发的程序员也很好的参考价值。... 目录: 第1章 初识c++ .1 1.1 c++简介 1 1.2 c++与c的区别 2 ...
  • 软件界面设计工具_3款合集

    千次下载 热门讨论 2010-06-29 03:52:47
    能够表示出各种控件的基本属性(如文本、位置和选中状态等),但它只是一个静态的图片,不能真实表现出每个控件的响应动作,如仅看这张图,是不清楚点击代理服务器设置分组框上的“设置…”按钮会有什么响应的。...
  • 单一工程模型下的业务关系,总的来说就是:你中我,我中你,相互依赖,无法分离。如下图: 4.2 项目组件化结构 主工程: 除了一些全局配置和主 Activity 之外,不包含任何业务代码。的也叫做空壳app ...
  • 这个项目可指定让AGP装置来使用的系统内存大小,这取用大小是PCI内存地址范围的一部份,可分配给图形内存的空间。 Init Display First: 这个项目可选择当系统开机时先行对AGP或是PCI插槽来做初始化的动作。 [AGP...
  •  如何新的存储能力超越正常的行数限制  查询优化器是如何运行的  为问题的查询计划排除故障的多种技术  何时强制sql server重用或创建新的缓存查询计划  运行dbcc时,sqlserver在内部检查什么  处理多个...
  • java 面试题 总结

    2009-09-16 08:45:34
    3、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 boolean...
  •  如何新的存储能力超越正常的行数限制  查询优化器是如何运行的  为问题的查询计划排除故障的多种技术  何时强制sql server重用或创建新的缓存查询计划  运行dbcc时,sqlserver在内部检查什么  处理多个...
  • FAQ(持续更新)

    2021-01-08 12:27:51
    什么用callback 我们用C++11 std::function类型的callback和process来包装用户行为,因此用户需要知道自己是在编写异步程序。我们认为callback方式比future或用户态协程能给程序带来更高的效率ÿ...
  • 并与被控制量的设定值(Set Point) 进行比较(见图2), 得到实际测量值与设定值的偏差,然后根据偏差信号的大小、变化率和被控制对象的动态特性,经过思维和推理,决定采用什么样的控制规律,以使被控制量快速、...
  • 还要学习有关递归的知识(即函数在什么情况下调自身)以及如何它来实现分而治之的策略。最 后将介绍函数指针,它使程序员能够通过函数参数来命令函数使用另一个函数。 第8章:函数探幽 本章将探索C++中函数...
  • 还要学习有关递归的知识(即函数在什么情况下调自身)以及如何它来实现分而治之的策略。最 后将介绍函数指针,它使程序员能够通过函数参数来命令函数使用另一个函数。 第8章:函数探幽 本章将探索C++中函数...
  • 还要学习有关递归的知识(即函数在什么情况下调自身)以及如何它来实现分而治之的策略。最 后将介绍函数指针,它使程序员能够通过函数参数来命令函数使用另一个函数。 第8章:函数探幽 本章将探索C++中函数...
  • 2-7 注释有什么作用?C++中有哪几种注释的方法?他们之间有什么区别? 解: 注释在程序中的作用是对程序进行注解和说明,以便于阅读。编译系统在对源程序进行编译时不理会注释部分,因此注释对于程序的功能实现不起...
  • 2009达内SQL学习笔记

    2010-02-10 19:46:58
    NOT IN 时, NULL 则出错,必须排除空值再运算。 in :选择列表的条件 使用IN操作符的优点: 在长的选项清单时,语法直观; 计算的次序容易管理; 比 OR 操作符清单执行更快;最大优点是可以包含其他 SELECT ...
  • Vue 中的 key 到底有什么用? <p>key 是给每一个 vnode 的唯一 id,依靠 key,我们的 diff 操作可以更准确、更快速 (对于简单列表页渲染来说 diff 节点也更快,但会产生一些隐藏的副作用,比如可能不会产生过渡...
  • 软件工程知识点

    2012-12-02 21:34:25
    软件定义是软件项目的早期阶段,主要由软件系统分析人员和用户合作,针对有待开发的软件系统进行分析、规划和规格描述,确定软件是什么,为今后的软件开发做准备。这个时期往往需要分阶段地进行以下几项工作。 1....

空空如也

空空如也

1 2 3
收藏数 54
精华内容 21
关键字:

关系大小调有什么用