美文网首页Java 杂谈
Java影响线程创建的因素

Java影响线程创建的因素

作者: voltric | 来源:发表于2018-06-21 11:28 被阅读9次

    “原创精选,转载注明出处,三克油”
    @Date 2018.06.21


    JVM : 内存不够会影响Thread的Create, 特别是C Heap. 以下JVM参数主要影响的是剩余内存的大小

    • Xmx
      • 堆大小
    • Xss
      • 线程堆栈大小
      • 占用越小,创建的线程数量越多
    • MaxPermSize
      • 持久代
      • 存放Class和Meta信息
      • 不会被垃圾回收
      • 默认物理内存的1/64
    • MaxDirectMemorySize
      • 堆外内存上限
    • ReservedCodeCacheSize
      • 代码缓存区
      • JIT编译的代码

    Kernel

    • max_user_processes
      • 用户进程数量限制
      • ulimit -u最大值
    • max_map_count
      • 涉及系统内存分配操作, 若超过sysctl_max_map_count则创建线程失败
      • /proc/sys/vm/max_map_count, 默认65530
    • max_threads
      • /proc/sys/kernel/threads-max
      • 受到物理内存限制,在系统做fork时, 会初始化此值
      • max_threads = mempages / (8 * THREAD_SIZE / PAGE_SIZE);
    • pid_max
      • 分配的PID数量限制
      • /proc/sys/kernel/pid_max

    相关文章

      网友评论

        本文标题:Java影响线程创建的因素

        本文链接:https://www.haomeiwen.com/subject/fwjqyftx.html