定时器context select go

Go语言的基本语法

关键字与标识符: 关键字:被赋予了特殊含义的单词,又叫保留字。 Go语言中的关键字一共有 25 个。 标识符定义: (1)Go语言对各种变量、方法、函数等命名时使用的字符序列。 (2)由若干个字母、下划线(_)、和数字组成,且第一个字符必须是字母。 标识符声明: (1)使用标识符之前必须进行声明。 ......
语法 语言

05_定时器

定时器 HAL_Delay 定时 HAL_Delay(1000); //延时1秒 缺点: 这一秒不能做其他事情 tim 定时中断 优点: 可以在延时时做一些其他的事情 ......
定时器 05

Go - Proverb: Accept interfaces, return structs

fake.go package fake import "fmt" type ExampleStruct struct { Item1 string Item2 string Item3 string } func (e ExampleStruct) LogLine() { fmt.Printf(" ......
interfaces Proverb structs Accept return

SQL update select结合语句详解及应用

SQL update select结合语句详解及应用 QL update select语句 最常用的update语法是: 1 2 UPDATE TABLE_NAME SET column_name1 = VALUE WHRER column_name2 = VALUE 如果我的更新值Value是从一 ......
语句 update select SQL

GO 中的时间操作(time & dateparse)【GO 基础】

〇、前言 日常开发过程中,对于时间的操作可谓是无处不在,但是想实现时间自由还是不简单的,多种时间格式容易混淆,那么本文将进行梳理,一起学习下。 官方提供的库是 time,功能很全面,本文也会详细介绍。 还有另外一个开源库 dateparse,使用起来比较方便,本文也会将加入示例测试出结果,以展示其优 ......
dateparse 时间 基础 time amp

Go每日一库之14:dig

简介 今天我们来介绍 Go 语言的一个依赖注入(DI)库——dig。dig 是 uber 开源的库。Java 依赖注入的库有很多,相信即使不是做 Java 开发的童鞋也听过大名鼎鼎的 Spring。相比庞大的 Spring,dig 很小巧,实现和使用都比较简洁。 快速使用 第三方库需要先安装,由于我 ......
dig

Go - Fibonacci

fibonacci.go package algorithms // Dynamic Programming func Fibonacci1(n int) int { if n <= 0 { return 0 } if n <= 2 { return 1 } previous1 := 1 previ ......
Fibonacci Go

Go每日一库之13:email

简介 程序中时常有发送邮件的需求。有异常情况了需要通知管理员和负责人,用户下单后可能需要通知订单信息,电商平台、中国移动和联通都有每月账单,这些都可以通过邮件来推送。还有我们平时收到的垃圾邮件大都也是通过这种方式发送的😭。那么如何在 Go 语言发送邮件?本文我们介绍一下email库的使用。 快速使 ......
email

Go比Python快多少倍?请看一个简单的例子

需求 两个0-10000的数组,循环遍历两个数组,获取两个元素,打印出乘积为56213的所有元素 Python实现 import datetime s = datetime.datetime.now() for i in range(10000): for j in range(10000): if ......
请看 例子 Python

【错误异常】The content of element type "mapper" must match "(cache-ref|cache|resultMap*|parameterMap*|sql*|insert*|update*|delete*|select*)+".

The content of element type "mapper" must match "(cache-ref|cache|resultMap*|parameterMap*|sql*|insert*|update*|delete*|select*)+". 服务启动异常 排查mapper.xm ......
quot cache parameterMap cache-ref resultMap

Sealos 新功能“定时任务”上线(省钱大杀器)

流量高峰时段资源不足?低流量时段服务器成本过高? 本着好用又省钱的目标,sealos 推出 定时任务 功能,保证稳定的同时降低成本。 Sealos 国内集群:https://cloud.sealos.top Sealos 海外集群:https://cloud.sealos.io 原文链接:https ......
新功能 任务 Sealos

Windows和Linux下通过go实现自删除

自删除在攻防中都挺常见的,自写远控通常也有需要。可是在度娘里搜不到什么办法,于是就查查Windows api学习记录一回。 linux 先获得当前程序的文件名,再使用syscall这个包中的Unlink调用系统来删除一个目录或者文件的链接,链接没了也就删除完成了。 fileName, _ := os ......
Windows Linux

go知名第三方包ssdb

因为beego中cache模块中使用了ssdb,所以准备学习下ssdb (1)ssdb简介 (2)ssdb的基本操作 (3)gossdb怎么使用? 1、ssdb简介 SSDB 是一个 C/C++ 语言开发的高性能 NoSQL 数据库, 支持 KV, list, map(hash), zset(sor ......
第三方 ssdb

Go每日一库之12:carbon(日期和时间)

简介 一线开发人员每天都要使用日期和时间相关的功能,各种定时器,活动时间处理等。标准库time使用起来不太灵活,特别是日期时间的创建和运算。carbon库是一个时间扩展库,基于 PHP 的carbon库编写。提供易于使用的接口。本文就来介绍一下这个库。 快速使用 第三方库需要先安装: $ go ge ......
日期 时间 carbon

Go - Merge Sort

MergeSort.go package main func MergeSort(items []int) []int { n := len(items) var combined []int switch { case n <= 1: combined = items case n == 2: i ......
Merge Sort Go

Go基础语法

1.结构 package main // 声明 main 包,表明当前是一个可执行程序 import "fmt" // 导入内置 fmt func main(){ // main函数,是程序执行的入口 fmt.Println("Hello World!") // 在终端打印 Hello World! ......
语法 基础

多路转接方案:select poll epoll 介绍和对比

1. IO模型 内存和外设的交互叫做IO,网络IO就是将数据在内存和网卡间拷贝。 IO本质就是等待和拷贝,一般等待耗时往往远高于拷贝耗时。所以提高IO效率就是尽可能减少等待时间的比重。 IO模型 简单对比解释 阻塞IO 阻塞等待数据到来 非阻塞IO 轮询等待数据到来 信号驱动 信号递达时再来读取或写 ......
方案 select epoll poll

ubuntu vscode cannot open source file "stddef.h" (dependency of "chrono"). Please run the 'Select IntelliSense Configuration...' command to locate your system headers.C/C++(1696)

cannot open source file "stddef.h" (dependency of "chrono"). Please run the 'Select IntelliSense Configuration...' command to locate your system heade ......

Go语言实现多态

1. 什么是多态多态是指根据类型的具体实现采取不同行为的能力。如果某个类型实现了某个接口,那么所有使用这个接口的地方,都可以支持这种类型的值。即不同的数据类型的实体实现提供统一的接口。Go中没有类的概念,它的多态是靠接口来实现的。 2. 在Go中的实现先定义一个抽象的接口,这个接口规定了结构体应当实 ......
语言

Go语言连不上 Mysql

1.dial tcp 127.0.0.1:3306: connect: connection refused 因为 mysql安装时,的配置有一个关闭网络连接,所以连不上 文件在 /etc/my.cnf.d/mariadb-server.cnf 把这信skip-networking注释了即可 [my ......
语言 Mysql

2023-09-16:用go语言,给你一个整数 n 和一个在范围 [0, n - 1] 以内的整数 p , 它们表示一个长度为 n 且下标从 0 开始的数组 arr , 数组中除了下标为 p 处是 1

2023-09-16:用go语言,给你一个整数 n 和一个在范围 [0, n - 1] 以内的整数 p , 它们表示一个长度为 n 且下标从 0 开始的数组 arr , 数组中除了下标为 p 处是 1 以外,其他所有数都是 0 。 同时给你一个整数数组 banned ,它包含数组中的一些位置。 ba ......
下标 整数 数组 长度 范围

Go学习笔记

这几天在学Go,记录一下一些困惑和理解 channel特性 查阅的资料: Go语言channel探究_go 多个协程读一个channel_JE_Xie的博客-CSDN博客 Go 中的 channel 解析— Go 中的并发性 - 知乎 (zhihu.com) Go中的channel_go chann ......
笔记

Go 项目的 MAKE 工具

Go 项目的 MAKE 工具 MAKE 工具是 Linux 和 Unix 系统中一种常见的自动化构建工具,通常用于管理和组织软件项目。在 Go 语言中,使用 MAKE 工具可以轻松地管理和构建项目,并自动执行诸如编译、测试、安装等复杂的操作。 下面将介绍如何在 Go 项目中使用 MAKE 工具,并说 ......
工具 项目 MAKE Go

WASI support in Go

原文在这里。 由 Johan Brandhorst-Satzkorn, Julien Fabre, Damian Gryski, Evan Phoenix, and Achille Roussel 发布于 2023年9月13日 Go 1.21添加了一个新的端口,通过新的GOOS值wasip1来定位W ......
support WASI Go in

setTimeout 和 setInterval 的定时时间深入研究

setInterval() - 间隔指定的毫秒数不停地执行指定的代码(一直执行)。 setTimeout() - 在指定的毫秒数后执行指定代码(只执行一次)。 使用setInterVal: function doStuff(){ // 此处为需要执行一段时间T的代码 } setInterVal(do ......
setInterval setTimeout 时间

Go每日一库之11:godotenv

简介 twelve-factor应用提倡将配置存储在环境变量中。任何从开发环境切换到生产环境时需要修改的东西都从代码抽取到环境变量里。 但是在实际开发中,如果同一台机器运行多个项目,设置环境变量容易冲突,不实用。godotenv库从.env文件中读取配置, 然后存储到程序的环境变量中。在代码中可以使 ......
godotenv

解决SpringBoot Async异步方法获取不到Security Context

SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_INHERITABLETHREADLOCAL);这样设置的话很不安全,不废话,直接上代码,改造一下AsyncConfig就可以了,线程也安全 /** * @descrip ......
SpringBoot Security Context 方法 Async

go包依赖管理-构建完整的依赖项目:目录结构及包的调用

目录结构: <home>/ |-- greetings/ |-- hello/1.分别进入对应目录创建以上目录结构 //bash切换到用户主目录 cd $HOMEPAHT$ //bash新建greetings目录并进入该目录 mkdir greetings cd greetings //bash创建 ......
结构 目录 项目

flask从入门到精通之钩子、异常、context、jinjia模板、过滤器

一、请求全局钩子【hook】 此处的全局钩子,其实就是类似django里面的中间件。 也就是只要调用或者注册了,在http请求响应中是必然执行的。 在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如: 在项目运行开始时,建立数据库连接,或创建连接池; 在客户端请求开始时,根据需求进行 ......
钩子 过滤器 模板 context jinjia

setInterval定时器

<script lang="ts" setup> import {ref, onMounted, onUnmounted} from "vue"; let timer = <any>ref(null); onMounted(() => { // 设置每隔5秒刷新一次 timer.value = se ......
定时器 setInterval