persevering

Thinking will not overcome fear but action will.

警惕fsnotify文件监控时的资源占用

正确使用inode、inotify资源

我们在使用fsnotify监控Linux文件资源时,涉及到对系统inode及inotify资源的申请、占用和释放,如果在程序中不警惕使用,便可能会造成系统资源耗尽,导致程序崩溃。 fsnotify介绍 fsnotify是Golang中一个实现文件监控的开源库,项目地址 github.com/fsnotify/fsnotify,其对外提供的接口比较少,使用也非常简单。 package mai...

GoLand&Delev远程调试

日常编码调试指南

GoLand&Delev远程调试 本文环境配置 服务端 Ubuntu 16.04.7 LTS 客户端 Win10 Goland 2019.3.2 Golang 1.16.5 Delev 1.4.0 配置远程服务器 打开GoLand设置Deployment,配置远程服务器地址以及项目代码在服务器上的存放路径。其中Type选择SFTP,Root p...

Git常用命令

个人整理实用的Git 指令

Git常用命令 更新远程分支信息 git remote update origin --prune 本地分支关联远程分支 git branch -set-upstream-to origin/<remote_branch_name> 丢弃工作区的修改 git checkout -- <file> 把暂存区的修改撤销掉(unstage),重新放回工作区 git ...

VMware中部署k8s多节点网络

ubuntu多虚机网络部署

安装要求 在搭建kubernetes(k8s)集群之前,我们需要具有多节点的集群,在本文即多虚机集群。本文安装目标: 部署3个ubuntu16.04虚机节点的集群,分别为master、node01及node02 集群中所有节点之间网络互通 每个节点可以访问外网 - 后期使用k8s时拉取镜像 禁止swap分区 配置VMware 这里使用的虚机镜像是ubuntu-16...

malloc/free与new/delete的区别

阅读《C++内存管理技术内幕》笔记

malloc/free与new/delete的区别 我们知道在C++中,我们经常需要对内存进行手动分配和回收,而且C++是兼容C的,我们可以在C++中编写C的程序。而malloc/free是C中已有的函数,我们为什么还要用new/delete呢? 主要区别 malloc/free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 对于...

堆和栈究竟有什么区别?

阅读《C++内存管理技术内幕》笔记

堆和栈究竟有什么区别? 主要区别有以下几点: 管理方式不同 空间大小不同 能否产生碎片 生长方向不同 分配方式不同 分配效率不同 管理方式 对于栈来讲,是由编译器自动管理,无需我们手动控制;对于堆来讲,释放工作由程序员控制,容易产生memory leak。 空间大小 一般在32位系统下,堆内存可以达到4G的空间,从这个角度来看堆内存几乎是无限制的;但对于栈来讲...

为博客添加 Gitalk 评论插件

BY Blog 添加 Gitalk 的评论插件了

前言 由于 Disqus 对于国内网路的支持十分糟糕,很多人反映 Disqus 评论插件一直加载不出来。而我一直是处于翻墙状态的~(话说你们做程序员的都不翻墙用Google的吗😅,哈哈,吐嘈下) 针对这个问题,我添加了Gitalk 评论插件。在此,非常感谢 @FeDemo 的推荐 。 正文 Gitalk 评论插件 首先来看看 Gitalk 的界面和功能: gitalk 使用 ...

使用 .gitignore 忽略 Git 仓库中的文件

.gitignore 文件在Git中的使用

使用 .gitignore 文件忽略指定文件 .gitignore 在Git中,很多时候你只想将代码提交到仓库,而不是将当前文件目录下的文件全部提交到Git仓库中,例如在MacOS系统下面的.DS_Store文件,或者是Xocde的操作记录,又或者是pod库的中一大串的源代码。这种情况下使用.gitignore就能够在Git提交时自动忽略掉这些文件。 忽略的格式 # :...

Git 代码回滚

回滚代码的正确姿势

并不适合阅读的个人文档。 git revert 和 git reset 的区别 先看图: sourceTree 中 revert 译为提交回滚,作用为忽略你指定的版本,然后提交一个新的版本。新的版本中已近删除了你所指定的版本。 reset 为 重置到这次提交,将内容重置到指定的版本。git reset 命令后面是需要加2种参数的:–-hard 和 –-soft。这条命令默认...

Git指令整理

不适合阅读的整理的一些个人常用的 Git 指令

随便整理的一些自用的Git指令 GitHub创建仓库提示代码 echo "# 项目名" >> README.md git init git add README.md git commit -m "first commit" git remote add origin git@github.com:qiubaiying/项目名.git git push -u orig...