defer函数的执行顺序是先进后出,和栈一样,return 最后执行,当出现panic的时候,就会按照先进后出的顺序执行defer函数,最后才执行panic,return 不再执行。合理利用defer函数可以避免程序异常退出,保证程序的...
Go语言中Kill子进程的正确姿势
* 问题场景 我们在编写部署系统的时候,通常需要在机器上部署一个agent,用来执行部署脚本,为了防止部署脚本写的有问题,长时间hang住,我们通常会为脚本的执行设置一个超时时间,到了时间之后就kill掉该脚本的...
Pom.xml解释大全
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-...
BigDecimal加减乘除方法
BigDecimal a = BigDecimal.valueOf(10); BigDecimal b = new BigDecimal(10); BigDecimal c = new BigDecimal("0.1111111"); System.out.println("加法:"+a.add(b)); ...
golang 实现每隔几分钟执行一个函数
1、使用定时器 2、使用这种方式 go function() func function() { // TODO 具体逻辑 // 每5分钟执行一次 time.AfterFunc(5*time.Minute, function) } 补充:Golang:每天零点定时执...
tp6使用cli(cmd)命令行模式调用访问控制器
tp6使用cli(cmd)命令行模式调用访问控制器 因为thinkphp6 简称tp6,默认不支持直接cli命令行模式访问控制器,于是利用官方的command实现了访问控制器. 优点如下: 1、调试方便,能准确的抛出各种异常(顺...
GO的lua虚拟机 gopher-lua
go 中使用 lua package main import ( lua "github.com/yuin/gopher-lua" ) func main() { l := lua.NewState() defer l.Close() if err := l.DoString(`print("Hello World")`); err != nil...
js 外部获取then里面的值
service async getOrderList(where) { return new Promise((resolve, reject)=>{ CargoOrderCommonModel.findAndCountAll({ //offset, //limit: parseInt(req.query....
Java 反射
一、概述 Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态...
Java 注解
一、概述 注解(Annotation)是Jdk5开始增加的对元数据(描述数据属性的信息)的支持,注解我们可以理解为标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理,以便于其他工具补充信息或者进行...