python垃圾回收机制
垃圾回收为什么要垃圾回收程序运行中,有些不再使用的对象持续占有内存,称之为内存泄漏memory leak. 内存泄漏导致计算机崩溃. 例如,服务程序(长期运行)中发生内存泄漏会导致内存被占满,会导致计算机崩溃. 好在python作为一种易用的语言,我们不用亲自进行内存管理(反面的是c语言,程序员必须非常注意内存管理). python的垃圾回收机制引用计数对每一个对象进行计数,ob_refcnt记录了一个对象被引用的次数. 当引用计数归零时,回收对象(被动触发) sys.getrefcount()可以获取一个对象的ob_refcnt 引用增加的情况: 对象被创建,例如 a=23 对象被引用,例如 b=a 对象被作为参数,传入到一个函数中,例如get_refcnt(a) 对象作为一个元素,存储在容器中,例如list1=[a,a]\ 引用减少的情况: 对象的别名被显式销毁,例如del a 对象的别名被赋予新的对象,例如a=24 一个对象离开它的作用域,例如 f 函数执行完毕时,func函数中的局部变量(全局变量不会) 对象所在...
代码格式工具-prettier与eslint
两工具侧重点有区别,eslint注重代码检查,prettier更注重代码格式化。prettier官方文档:prettier configuration 默认忽略文件配置路径:./.prettierignore,格式同.gitignore 配置样例如下:.prettierrc.yaml 1234567891011121314# 使用tab换行useTabs: true# 每个缩进空格数tabWidth: 2# 一行最大长度printWidth: 100# xml末尾">"不单独一行bracketSameLine: true# markdown一个段落一行proseWrap: never# overrides:# - files: "*.md"# options:# printWidth: 9999 命令行prettier --write . eslint配置样例123456789101112131415161718192021222324252627282930313233343536373839"e...
j1900+Docker+Openwrt部署指南
安装系统环境配置sudo vim /etc/profile\ 1234567sudo vim /etc/environmentEDITOR="vim"http_proxy=""https_proxy=""no_proxy="192.168.1.1/24,10.92.128.1/18,.lan" 时区sudo tzselect sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 配置apt镜像源[可选]sudo vim /etc/apt/sources.list 1234567891011121314# https://mirrors.tuna.tsinghua.edu.cn/# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse# d...
旁路由配置
什么是旁路由将传统的 终端-路由模式 改为 终端-网关-路由模式 ,数据经过网关的代理,再发送给路由器。 我为什么使用旁路由我的软路由无法连接到宿舍的校园网,并非无法获取ip,而是爱快系统的某些配置导致即使网卡的mac已经经过了校园网的认证(通过其他设备更改mac认证实现),仍然无法链接上网络。而虚拟机的openwrt系统就能正常上网,推测是爱快的线路检测机制(设置静态路由表也不好使)。 也许可以让爱快使用openwrt的网络?但是这实在算不上优雅。 现在宿舍网络采用的是小米路由器连接校园网作为主路由,软路由当作旁路网关的一个结构。 我的旁路由如何配置首先在openwrt上只配置一个lan口,网关配置为主路由,然后ssr允许lan口连接配置。 然后在爱快上配置dhcp服务,爱快的dhcp管理真的很好用,可以为每个设备配置单独的网关和dns。记得给openwrt分配一个固定的ip,然后给需要留学的设备设置网关为openwrt. 最后最好关掉小米路由器的dhcp服务。 为什么要配置防火墙在配置完成后,我发现一个问题,电脑网络一切正常,安卓机却只能留学不能访问国内网站(很慢),遂百度之...
windows修改注册表来删除网络序号
windows注册表不是一个太好的设计,个人更喜欢unix系统里的配置文件。 win8/win10无线网络名称后面的数字怎么删掉或修改? windows所有连接过的网络都保存在这两个位置: 12Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\ProfilesComputer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\Unmanaged 并没有提供删除方式,连接到ssid相同的网络时会在后面加上数字,分别不同网络。 删掉就行。
统计子岛屿
题目统计子岛屿 问题,如图 解法对表格2,采用递归的方法遍历岛屿,在递归时检查一下表格一对应位置是不是陆地。 代码123456789101112131415161718192021222324252627282930/** * @param {number[][]} grid1 * @param {number[][]} grid2 * @return {number} */var countSubIslands = function (grid1, grid2) { m = grid1.length; n = grid1[0].length; count = 0; const dfs = (row, col) => { if (row < 0 || row >= m || col < 0 || col >= n || grid2[row][col] != 1) return true; grid2[row][col] = 2; let temp = grid1[...
知乎的盲水印
3天前,知乎短暂上架了一个实验性功能——在网页版和app添加肉眼不可见的盲水印。 但是当我查看网页版时,这个功能已经下架了,使用图片盲水印在线工具也没办法看到水印了。 原理据可以查到的资料,使用了一个透明度为千分之五的svg显示了用户的id,属于是比较粗暴的做法。 如果使用频域水印,不仅肉眼无法识别,上面的工具也会无可奈何了。 更多图片隐写术:https://www.bilibili.com/video/BV1Su411X7vY ,防不胜防啊。 以后打算用这个来拍屏幕替代截图: 对抗网页版是最简单的,直接移除元素即可。 客户端涉及反编译,就比较麻烦。 一点感想技术无罪,图片隐写术用来保护版权,就是干好事,用来驭民,就是坏技术。 以及,这也是我喜欢使用网页应用而不是app的原因,网页相当于用户是完全透明的,但我至今不知道qqProtect.exe到底保护了什么。




