摘要: `go`本身提供的`semaphore`只能在同一个进程多个协程或线程间使用,无法在不同的`go`进程之间使用,所以本文介绍,如何使用`go`中的`syscall`来使用`POSIX`系统提供的`命名信号量`。 本文涉及到的代码可在此仓库查看:[semaphore](https://github.c 阅读全文
posted @ 2023-07-30 14:51 zzhaoleiの博客 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 1.列表结构体 #define PyObject_VAR_HEAD PyVarObject ob_base; typedef struct { PyObject ob_base; Py_ssize_t ob_size; /* Number of items in variable part */ } 阅读全文
posted @ 2023-04-07 14:00 zzhaoleiの博客 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 1.整数对象 在Python3.11.2中,整数结构体叫做PyLongObject。 #if PYLONG_BITS_IN_DIGIT == 30 typedef uint32_t digit; ... #elif PYLONG_BITS_IN_DIGIT == 15 typedef unsigne 阅读全文
posted @ 2023-04-07 13:45 zzhaoleiの博客 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 所有源码均基于Python 3.11.2 1.PyObject定义 // 实际上没有任何东西被声明为PyObject,但是每个指向Python对象的指针都可以转换为PyObject*。 // 这是手动模拟的继承。同样的,每个指向可变大小的Python对象的指针也可以转换为PyObject*,此外,也 阅读全文
posted @ 2023-04-07 13:43 zzhaoleiの博客 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 记录自己生活或工作中遇到的问题的解决方案 在使用mosh连接到服务器Ubuntu 20.04时,发现终端(终端是Kitty,支持256color)的颜色不能正常显示。 使用命令查看了一下$TERM的设置 $ echo $TERM xterm-256color 显示的是xterm-256color,说 阅读全文
posted @ 2021-01-23 17:29 zzhaoleiの博客 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 如何查看Django ORM实际执行的原始SQL查询 确保Django的DEBUG配置为True,执行命令(可以在shell中执行): >>> from django.db import connection >>> connection.queries [{'sql': 'SELECT polls 阅读全文
posted @ 2020-09-03 17:50 zzhaoleiの博客 阅读(990) 评论(0) 推荐(0) 编辑
摘要: 场景 有时候在排除bug、测试等场景下,会修改一些文件,但是这些文件又不希望在每次提交代码的时候都手动排除,这时候可以临时忽略这些文件。这样就不用修改.gitignore文件 使用方式 # 忽略文件 git update-index --skip-worktree <文件名称或路径,可以是多个文件> 阅读全文
posted @ 2020-09-03 17:32 zzhaoleiの博客 阅读(2363) 评论(0) 推荐(0) 编辑
摘要: 问题 有这么一个需求,需要根据订单的创建时间和更新时间排序,要按照最后的操作时间进行排序。 比如,在26分创建了一个订单a,在27分创建了一个订单b,然后在28分修改订单a,又在29分创建了订单c,那么此时订单的排序结果,应该是c,a,b。 表中数据(时间是示例,实际是datetime.dateti 阅读全文
posted @ 2020-09-03 17:30 zzhaoleiの博客 阅读(1943) 评论(0) 推荐(0) 编辑
摘要: 关于Django Admin中inlines等类型的问题 工作中遇到一个问题,需要让一个表中的每一条记录不可修改,但是可以增加。发现使用readonly_fields字段可以让字段不可修改,但是新增的时候也不能新增了(需要填写的字段全部变成了空白,没有了输入框),在网上苦苦搜寻,终于找到了相关的问题 阅读全文
posted @ 2020-06-19 12:05 zzhaoleiの博客 阅读(2783) 评论(0) 推荐(0) 编辑
摘要: 需求背景 自己平常工作,一般在公司用公司的电脑,在家里就是自己的,但是vscode如果配置了新的内容,或者安装了新的插件,那每次都需要单独记录一下然后再重新配置一遍。使用Settings Sync插件可以直接同步配置和插件. 安装和配置 首先肯定是需要VSCode的,然后在插件栏搜索settings 阅读全文
posted @ 2019-12-12 11:37 zzhaoleiの博客 阅读(2291) 评论(0) 推荐(1) 编辑