- 博客(4)
- 收藏
- 关注
原创 JVM线程创建概述
JVM线程和OS操作系统线程的关系 linux操作系统的线程控制原语 int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (void *), void *arg);(具体确认待考证)这个函数是linux系统的函数,可以用C或者C++直接调用,上面信息也告诉程序员这个函数在pthread.h, 这个函数有四个参数 | pthread_t *thread | 传出参数,调用之后会传出被创建
2021-01-14 10:32:54
404
1
原创 Sync的代码自我验证:
package com.luban.layout; import org.openjdk.jol.info.ClassLayout; import java.util.ArrayList; import java.util.List; import static java.lang.System.out; public class JOLExample14 { static A a; public static void main(String[] args) throws Exce
2021-01-14 10:26:31
280
原创 Sync全部知识
Sync全部知识 基础:对象JOL相关内容: 无锁: 0 01 偏向锁: 1 01 轻量锁: 0 00 重量: 0 10 GC: 1 0 01 用JOL测试打印对象头的时候需要注意一个问题,JVM启动时会默认开启5s的偏向锁启用延迟,前5s是没有偏向锁的,这时调用sync得到的轻量锁,可以通过JVM的参数来禁用延迟-XX:BiasedLockingStartupDelay=0。 三种锁的性能对比: package org.example.markWord; import org.openjd
2021-01-14 10:23:58
996
原创 线性表算法时间复杂度的一些小知识
算法时间复杂度定义 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量度,记作:T(n)=O(f(n))。f(n)是问题规模n的某个函数。 推导大O阶方法----简而言之,只有常数项则为1,否则则只保留最高阶,比如n2;n3。 常见例子 举个例子:for(int i=0;i<n;i++)...
2020-03-24 07:44:13
4934
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人