Locked ownable synchronizers

Locked ownable synchronizers An ownable synchronizer is a synchronizer that may be exclusively owned by a thread and uses AbstractOwnableSynchronizer (or its subclass) to implement its synchronization property. ReentrantLock and ReentrantReadWriteLock are two examples of ownable synchronizers provided by the platform. http://stackoverflow.com/questions/41300520/what-is-locked-ownable-synchronizers-in-thread-dump

java jps

java jps jps位于jdk的bin目录下,其作用是显示当前系统的java进程情况,及其id号。 jps相当于Solaris进程工具ps。不象&quo

自旋锁/Spin lock

自旋锁/Spin lock 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 public class SpinLock { private AtomicReference<Thread> sign =new AtomicReference<>(); public void lock(){ Thread current = Thread.currentThread(); while(!sign.compareAndSet(null, current)){ } } public void unlock (){ Thread current

systemtap

systemtap http://www.cnblogs.com/hazir/p/systemtap_introduction.html 内核探测工具systemtap简介 systemtap是内核开发者必须要掌握的一个工具,本文我将简单介绍一下此工具,后续将会有系列文章介绍

gomock

gomock 1 2 3 4 go install github.com/golang/mock/mockgen@v1.6.0 mockgen -source feeds/feeds.go -destination feeds/mocks/feeds_mock.go -package mocks -source:设置需要模拟 (mock)的接口文件 -destination:设置 mock 文件输出的地方,若不设置则打

netcat

netcat commands 1 2 3 4 # install gnu-netcat pacman -S gnu-netcat # listen on udp port nc -vv -ul -p 1234 NetCat是一个非常简单的Unix工具,可以读、写TCP或UDP网络连接(network con

openjdk

openjdk http://openjdk.java.net/projects/jdk/ https://jdk.java.net windows install openjdk 1 winget install Microsoft.OpenJDK.21 1 2 3 4 5 6 7 8 9 10 11 12 13 ## archlinux install openjdk # openjdk sudo pacman -S jdk-openjdk sudo pacman -S openjdk-src # jdk8 sudo pacman -S jdk8-openjdk openjdk8-src sudo pacman -S jdk11-openjdk # 查看已经安装的 jdk archlinux-java status sudo archlinux-java set java-11-openjdk sudo pacman -S jdk17-openjdk openjdk17-src 切换

MySQL 共享锁 排他锁

‘MySQL 共享锁 排他锁’ http://www.hollischuang.com/archives/923 共享锁(Share Lock) 共享锁又称读锁,是读取操作创建的锁。其他用户可以并发读取数据,但任何事务都不能对数据进行修

MySQL INNODB

MySQL INNODB InnoDB 由 Innobase Oy 公司所开发, 发音为 “in-no-db” http://wulijun.github.io/2012/09/29/MySQL-innodb-intro.html InnoDB是MySQL下使用最广泛的引擎, 它是基于 MySQL 的高可扩展性和高性能存储引擎, 从5.5版本开始, 它已

MySQL分区表, partition

MySQL分区表, partition 没有分区的表创建分区 partition management on a not partitioned table is not possible 1 2 3 4 5 6 7 ALTER TABLE table0 PARTITION BY RANGE (to_days(field0)) ( PARTITION p201908 VALUES less THAN (737668), PARTITION p201909 VALUES LESS THAN (737698), PARTITION p201910 VALUES LESS THAN (737729), PARTITION p201911 VALUES LESS THAN (737759), PARTITION

zsh, oh-my-zsh, oh my zsh

zsh, oh-my-zsh, oh my zsh 1 2 3 4 5 6 7 8 9 10 11 # 查看已经安装的 shell 列表 cat /etc/shells ## 查看当前 shell echo $SHELL # archlinux install zsh sudo pacman -S git zsh # ubuntu install zsh sudo apt install zsh install oh my zsh 1 2 3 # install oh-my-zsh, will set default shell to zsh

archlinux, tensorFlow, golang

archlinux, tensorFlow, golang build tensorflow 1 2 3 4 5 6 7 8 git clone https://github.com/tensorflow/tensorflow sudo pacman -S bazel sudo pacman -S python-numpy 1 2 3 4 5 docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow docker run -it gcr.io/tensorflow/tensorflow bash https://www.tensorflow.org/install/install_linux#InstallingDocker https://www.tensorflow.org/get_started/get_started

iowait

iowait iowait 表示在一个采样周期内有百分之几的时间属于以下情况: CPU空闲、并且有仍未完成的 I/O 请求。 对 %iowait 常见的误解有两个: 一是误以为 %iowait 表示 CPU不能工

Guava cache

Guava cache http://www.cnblogs.com/peida/p/Guava_Cache.html 缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。 缓存的主要作用

vmstat

vmstat 1 2 3 4 5 6 7 vmstat -SM 1 vmstat 1 10 # vmstat每2秒采集数据,一直采集,直到结束程序 vmstat 2 # 2表示每两秒采集一次服务器状态,1表示只采集一次。 vmstat 2

jvm thread DestroyJavaVM

jvm thread DestroyJavaVM DestroyJavaVM is a thread that unloads the Java VM on program exit. Most of the time it should be waiting, until apocalypse of your VM. Signal Dispatcher is a thread that handles the native signals sent by the OS to your jvm. Finalizer threads pull objects from the finalization queue and calls it finalize method. Reference Handler is a high-priority thread to enqueue pending References. Its defined in java.

Java 获取 进程PID

Java 获取 进程PID 1 2 3 4 5 6 7 8 9 String name = ManagementFactory.getRuntimeMXBean().getName(); // get pid String pid = name.split("@")[0]; logger.info("PID:{}", pid); 之前并不知道Java中如何能够获取当前进程 (也就是包含当前Java程序的JVM所