java基础
一日立三金
纸上得来终觉浅,绝知此事要躬行
展开
-
java获取linux主机中英伟达GPU状态信息(通过nvidia-smi命令)
由于业务需要获取服务器显卡信息来分配资源,所以打算新增接口来响应GPU信息。 百度许久发现没有直接获取相关信息的工具包,有 oshi 包可以用来获取服务器内存,硬盘等基本信息,但是可惜不支持GPU信息获取;间间获取的方法都是通过bash执行nvidia-smi命令然后截取字符串解析。不过这种方法很不灵活,后来通过查看api,发现nvidia-smi命令可以直接输出xml格式文本,通过xml可以直观的解析GPU信息与进程信息。具体实现如下: 1. 通过 nvidia-s...原创 2020-11-06 16:37:39 · 3144 阅读 · 1 评论 -
ProcessBuilder的使用(执行多行命令,实时获取日志)
ProcessBuilder用来创建操作系统进程,可以在指定位置,执行指定命令。这里通过process实现java执行shell,python脚本的功能。1.通过ProcessBuilder执行多行命令由于需要在命令中设置Path,试了多种方式后,使用cmd/bash封装为一整个命令实现,其中windows环境下使用cmd,linux环境下使用/bin/bash。windows代码如下:多行命令通过分号分割List<String> commandList = new Array原创 2020-05-11 16:04:44 · 8878 阅读 · 0 评论 -
了解jdk源码-atomic和locks包
1.原子操作类包路径:java.util.concurrent.atomic基础类其中包括:布尔类型-AtomicBoolean,整形类型-AtomicInteger,浮点类型-AtomicLong,引用类型-AtomicReference。其主要理念:由volatile修饰value保证可见性和有序性,使用unsafe进行CAS操作实现原子性操作。其中主要方法getAndS...原创 2020-02-26 15:12:30 · 200 阅读 · 0 评论 -
java-----基础(2)
数组:数组的建立有四步,声明(类型,名字)—-创建(开辟内存空间)——赋值(必须符合类型)—–使用 注意数组是一个对象;数组的初始容量为0。 数组复制 system.arraycopy(maArray,0,hold,0,myArray.length) 数组的遍历 foreach在传递基本数据类型时,传递的是数据值。而在传递引用类型时,传递的是该引用,即该数据的存放地址。值传递和引用原创 2017-08-12 13:06:17 · 203 阅读 · 0 评论 -
java-----内部类
Java内部类详解 说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉。原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法。今天我们就来一探究竟。下面是本文的目录大纲: 一.内部类基础 二.深入理解内部类 三.内部类的使用场景和好处 四.常见的与内部类相关的笔试面试题 若有不正之处,请多谅解并欢迎批评指正。 请尊重作者劳转载 2017-08-20 15:15:14 · 250 阅读 · 0 评论 -
java-----建立对象时代码执行顺序
如果之前没有进行类加载 1.类加载,(java -cp xx.xx.xx,Class.forName/load) 同时初始化类中静态的属性(赋默认值) 2.执行静态代码块(只执行一次,属于类) //如果之前做过类加载,从第三步开始执行 3.分配内存空间,同时初始化非静态的属性(赋默认值) 4.调用父类构造器 5.父类构造器执行完后,如果自己声明属性的同时有显示的赋值,那么进行显示赋值把原创 2017-08-20 15:21:29 · 238 阅读 · 0 评论 -
java-----I/O流
按照不同分类,大致可以分为输入流,输出流;字节流,字符流;包装流,基本流。 其中输入流大致可以看做InputStream,基本方法为read(),read(byte []),read(byte [],int off ,int len). 需要特别注意:read()返回下一个数据字节;如果到达流的末尾,则返回 -1。 read(byte [])返回读原创 2017-08-20 16:01:34 · 256 阅读 · 0 评论 -
java异常捕获的一点感悟
感谢原作者的分享:http://blog.csdn.net/salerzhang/article/details/46581457下面的代码时Thinking in java中的一个题目。问会输出什么? class Annoyance extends Exception {} class Sneeze extends Annoyance {} class Human { public sta转载 2017-08-24 20:01:53 · 199 阅读 · 0 评论