blog

内容编辑参考

管理页面 接口 django CMS Site menu Page menu Language menu Publishing controller 管理员视图和组成 页面列表 管理页面 接口 django CMS 的工具栏包括以下几部分。 django CMS 返回到网站的主页。 Site menu example.com 是网站菜单。这个

内联

描述 术语和定义 编译单元 单定义规则 内联声明 非成员函数 成员函数 不适合内联替换的用法 C/C++ static/extern + inline C89/90 inline C99 inline C++ inline GCC 编译选项 内联函数对安全性和速度的取舍 inline vs

分布式原理

Bittorrent协议 中心化原理 去中心化原理 DHT/kademlia NAT IPFS/libp2p 去中心化流媒体应用livepeer Bittorrent协议 比特流(BitTorrent)

删除 void 指针

Is it safe to delete a void pointer? 代码如下: void* my_alloc (size_t size) { return new char [size]; } void my_free (void* ptr) { delete [] ptr; } 对于内建类型,delete void*不会造成内存泄漏,系统在分配内存的时候记

制作 Python 运行环境镜像

拉取基础镜像 编写 Dockerfile 制作镜像 更新镜像 安装 Sphinx + ReadTheDocs 支持 方法 1:进入镜像内部更新镜像 方法 2:编写新的 Dockerfile 推送镜像 推送到官方仓库 Docker Hub 推送到私有仓库 xxx 拉取

制造历史

git fast-import git fast-export git fast-import git fast-import支持从一个特定格式的文本读入,从头创建 git 历史记录 可用这个命令很快写一个脚本运行一次,一次迁移整个项目 写一

可重入性

常见的线程不安全函数和对应的 unix 下的线程安全函数 保持跨越多个调用状态的函数 rand,对应 rand_r strtok,对应 strtok_r 返回指向静态变量的指针的函数 as

同一包不同源文件变量声明时不要带包名

同一个包 pkgname 有多个源文件,比如 A.go、B.go。A.go 中声明了变量 var1,B.go 使用此变量直接写 var1,如果使用 pkgname.var1 会报错,找不到定义

命令行创建文件

cat touch 标准重定向符号 > echo/printf nano vi/vim cat cat 可用于创建文件。输入回车后,光标移到到下一行,可以开始输入文本。完成之后使用 Ctrl+D 退出,并返回到提示符 cat > file_name cat 也可

多些时间能少写些代码

原文 软件的精髓在于设计 时间和空间的取舍、TCP/UDP 通信、同步异步、数据冗余 重要 多和客户讨论需求和未来可能的变化:避免边开发边加需求 调查实