- 博客(451)
- 收藏
- 关注
原创 Implementing a try-catch-like block in Go
Implementing a try-catch-like block in Go。
2024-04-01 22:19:43 458 1
原创 上升子序列的最大长度,递归-记忆化搜索-动态规划三步走
题目描述:小明有一个数组,他想从数组任意元素开始向后遍历,找出所有上升子序列,并计算出最长的上升子序列的长度。上升子序列的最大长度,递归-记忆化搜索-动态规划三步走
2024-01-27 19:31:12 2196
原创 Go 从标准输入读取数据
使用fmt.Scan扫描到空格的时候,就会结束扫描。在acm类比赛中,输入时数据可能按空格拆分,所以读取完整的数据十分不便,需要借助循环才能达到目的。
2024-01-26 21:15:11 2374
原创 samber/do的使用及其原理
使用对象容器可更好的帮助程序管理单例的对象。将初始化好的对象放入对象容器中,使用时向容器索取而非使用new的方式主动创建,这是一种控制反转(IOC)的思想,或者说它是依赖倒置(DI)。
2024-01-25 19:11:15 2016
原创 如何获取goroutineID
我们常用的C/C++,java等语言,原生的对ThreadID提供了访问的能力,但是Go语言并没有。线程ID可以与线程本地存储(TLS)搭配使用,可以产生一些新的玩法。线程ID可以用于分布式锁的条件,即让特定的线程对特定的资源上锁或解锁。
2024-01-25 17:33:32 2623
原创 有限状态自动机
如下用Go模拟状态流转。我们规定了三种状态,分别是Open,Middle,Close。由Open状态可以向Middle状态流转,由于Middle状态可以向Close状态流转。
2024-01-22 16:45:52 2082
原创 Go zero copy,复制文件
这里使用零拷贝技术复制文件,从内核态操作源文件和目标文件。避免了在用户态开辟缓冲区,然后从内核态复制文件到用户态的问题。调用的是syscall.Sendfile系统调用函数。
2024-01-09 22:49:42 2467 1
原创 gin实现登录逻辑,包含cookie,session
1. 客户端发起`http://localhost/`请求。2. 请求须经过后端AuthRequired中间件鉴权。该中间件查看session中是否保存了请求携带的cookie对应的用户信息,若有。则登录成功;若没有,则重定向到`http://localhost/login`进行登录。3. GET方法请求`http://localhost/login`时只返回页面,不需鉴权逻辑。4. POST方法请求`http://localhost/login`时,不需鉴权逻辑。进行登录验证,并记录session
2023-12-25 00:08:31 1214
原创 hyper-v ubuntu2204指定静态ip地址
虚拟机每次重新启动,都会动态分配IP,这导致我们无法使用一个固定的ip连接到虚拟机内部。解决该问题的最直接有效的办法就是给虚拟机绑定2张网卡,一张用于连接外网、一张用于连接内网。
2023-12-20 22:02:12 2340 4
原创 visual studio 2022 IDE对C++代码反汇编
敲一段代码,在windows电脑儿上,忽然想用visual studio瞧瞧这段代码的汇编长什么样,怎么做呢?
2023-12-12 00:39:11 728
原创 Go Self-reproducing programs (自重写)
【代码】Go Self-reproducing programs (自重写)
2023-12-11 16:44:39 1023
原创 arc ERROR: Unable to load libphutil
如上提示,以max os为例,将php.ini(通过brew 安装的php7配置文件位于/opt/homebrew/etc/php/7.0/php.ini)
2023-07-17 20:51:42 252
原创 Go工程化:配置及包管理
Go1.5+引入vendor管理方式,依赖于GOPATH,从GOPATH中获取依赖到自己项目的vendor目录。命令获取到的库,放置在src目录,bin目录放置编译好的文件,pkg目录放置预编译的文件,版本控制困难。像java的maven,支持代理和私有仓库。无需将项目代码放入GOPATH的src。Go Module使用:1.设置Go env,2.使用。记录配置的操作和变更历史,提供可回滚能力。敏感配置是不允许直接硬编码到代码中的。敏感配置禁止一切形式的输出和打印。不使用的配置及时从代码中移除。
2023-06-23 23:12:15 879
原创 Elasticsearch:result
es使用倒排索引,不利于分页,查询 990 ~ 1000的数据实际上是查询 0 ~ 1000 的数据,然后截取最后10条。当搭建集群后数据处理变得复杂。es支持对搜索结果排序,默认是根据相关度算分(_score)来排序。可以排序的字段类型有:keyword、数值、地理坐标、日期等类型。es默认情况下只返回top10的数据,而如果要查询更多数据就需要修改分页参数了。针对深度分页,ES提供了两种解决方案。做法是:服务端提前给搜索字段加上标签。在搜索结果中把搜索关键字突出显示。ES设定结果集查询的上限是。
2023-06-23 17:37:00 349
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人