作者:AlbertWen
添加时间:2018-10-03 15:07:56
修改时间:2025-09-30 14:12:27
分类:
08.Java基础
编辑
为什么要有引用计数器
Netty里四种主力的ByteBuf,其中UnpooledHeapByteBuf 底下的byte[]能够依赖JVM GC自然回收;而UnpooledDirectByteBuf底下是DirectByteBuffer,如 Java堆外内存扫盲贴 所述,除了等JVM GC,最好也能主动进行回收;而PooledHeapByteBuf 和 PooledDirectByteBuf,则必须要主动将用完的byte[]/ByteBuffer放回池里,否则内存就要爆掉。所以,Netty ByteBuf需要在JVM的GC机制之外,有自己的引用计数器和回收过程。
一下又回到了C的冰冷时代,自己malloc对象要自己free。 但和C时代又不完全一样,内有引用计数器,外有JVM的GC,情况更为复杂。
作者:AlbertWen
添加时间:2017-12-17 18:22:36
修改时间:2025-11-11 04:47:21
分类:
12.PHP库/系统
编辑
遇到的问题:
我们还是先来看手册是怎么说的:
It is important to remember that any string participating in an Excel formula is allowed to be maximum 255 characters (not bytes).
当下拉列表的数据来源过长(more than 255 characters)时,该下拉列表会显示不正确(我遇到的情况是:该下拉列表显示了别的正常的下拉列表的数据来源)。
作者:AlbertWen
添加时间:2017-10-27 19:28:58
修改时间:2025-11-05 10:23:43
分类:
06.Linux软件安装
编辑
先前参考 如何 实现PHP多版本的 共存 和 切换? 实现了Linux(Ubuntu/CentOS)系统下,PHP多版本的切换,但是在 Mac OS 下,由于用户权限控制的比较严格,文章里提到的脚本运行失败(没达到预期效果)。后面采用了其他方式实现了 通过执行脚本自由切换PHP版本:
1、新建 2 个 .bash_profile 文件模板,文件名分别为
/Users/jianbao/.bash_profile_5.6
/Users/jianbao/.bash_profile_7.1
作者:AlbertWen
添加时间:2017-10-27 13:01:20
修改时间:2025-11-14 15:06:23
分类:
21.Golang编程
编辑
作者:AlbertWen
添加时间:2018-08-26 14:08:15
修改时间:2025-11-07 16:54:49
分类:
08.Java基础
编辑
作者:AlbertWen
添加时间:2017-10-29 09:11:19
修改时间:2025-11-10 05:01:03
分类:
12.PHP库/系统
编辑
getField() 使用技巧
getField() 方法是 ThinkPHP 中用来获取字段值的方法,区别于 select() 和 find() 方法,通常仅用于获取个别字段的值。但是事实上并没有那么简单,该方法的用法总结如下:
获取某个字段值
这个是 getField() 方法最基本的用法,用于获取符合条件的某个字段值。
// 实例化User对象
$User = M("User");
// 获取ID为3的用户的昵称
$nickname = $User->where('id=3')->getField('nickname');
返回的 nickname 是一个字符串结果。也就是说,即使有满足条件的多个字段,也只会返回一个结果。
作者:AlbertWen
添加时间:2019-03-30 22:34:29
修改时间:2025-11-10 21:04:44
分类:
15.OpenResty_Lua
编辑
数字型 for 的语法如下:
for var = begin, finish, step do
--body
end
作者:AlbertWen
添加时间:2017-12-13 14:43:17
修改时间:2025-11-11 16:44:54
分类:
13.C/C++/Rust
编辑
作者:AlbertWen
添加时间:2018-04-28 12:34:56
修改时间:2025-11-12 22:28:40
分类:
11.PHP基础
编辑
一、十进制(decimal system)转换函数
1、十进制转二进制 decbin() 函数,如下实例
echo decbin(12); // 输出 1100
echo decbin(26); // 输出 11010
decbin -- 十进制转换为二进制
说明
string decbin ( int number )
返回一字符串,包含有给定 number 参数的二进制表示。所能转换的最大数值为十进制的 4294967295,其结果为 32 个 1 的字符串。
作者:AlbertWen
添加时间:2018-11-06 23:44:59
修改时间:2025-11-13 11:46:37
分类:
08.Java基础
编辑
并发编程实践中,this引用逃逸("this"escape)是指对象还没有构造完成,它的this引用就被发布出去了。这是危及到线程安全的,因为其他线程有可能通过这个逸出的引用访问到“初始化了一半”的对象(partially-constructed object)。这样就会出现某些线程中看到该对象的状态是没初始化完的状态,而在另外一些线程看到的却是已经初始化完的状态,这种不一致性是不确定的,程序也会因此而产生一些无法预知的并发错误。在说明并发编程中如何避免this引用逸出之前,我们先看看一个对象是如何产生this引用逸出的。