<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Kyee编程之道]]></title><description><![CDATA[程序员应该脚踏实地，切忌心浮气燥。]]></description><link>https://blog.youkuaiyun.com/kyee</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kyee]]></copyright><item><title><![CDATA[C 模拟类的命名规范]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/131263831</link><guid>https://blog.youkuaiyun.com/kyee/article/details/131263831</guid><author>kyee</author><pubDate>Sat, 17 Jun 2023 19:37:31 +0800</pubDate><description><![CDATA[1). 模拟类以大写字母 'T' 开头的后跟驼峰式名称;
2). 模拟类为类数据的指针, 类数据名称为:  + "Data";
     公开数据成员必须放在前面, 私有数据成员是受保护的, 只表示私有数据在类数据中占据的内存空间尺寸。]]></description><category></category></item><item><title><![CDATA[对象状态示例类]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/104196421</link><guid>https://blog.youkuaiyun.com/kyee/article/details/104196421</guid><author>kyee</author><pubDate>Thu, 06 Feb 2020 14:57:45 +0800</pubDate><description><![CDATA[基于对象状态类的示例类，可以根据示例类举一反三，充分提高多线程的并发能力。]]></description><category></category></item><item><title><![CDATA[对象状态类]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/104196401</link><guid>https://blog.youkuaiyun.com/kyee/article/details/104196401</guid><author>kyee</author><pubDate>Thu, 06 Feb 2020 14:54:52 +0800</pubDate><description><![CDATA[在多线程编程中，但凡对象的操作必须在某种状态下才有效，且对象状态的变化是需要一定的时钟周期，这时就涉及状态迁移。利用好对象状态可以提高程序的并发能力，同时也能控制对象状态。]]></description><category></category></item><item><title><![CDATA[共享对象模板]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/104196212</link><guid>https://blog.youkuaiyun.com/kyee/article/details/104196212</guid><author>kyee</author><pubDate>Thu, 06 Feb 2020 14:43:40 +0800</pubDate><description><![CDATA[在多线程编程中，涉及多线程对象共享，为了保证对象有效，防止出现一个线程正在操作对象而另外线程正在或已经释放对象的情况。共享对象模板就是针对多线程共享对象而设计，通过对象引用计数来保证对象有效及对象释放的向后延迟。]]></description><category></category></item><item><title><![CDATA[用 C 语言实现单片机中的动态内存管理]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/85111995</link><guid>https://blog.youkuaiyun.com/kyee/article/details/85111995</guid><author>kyee</author><pubDate>Thu, 20 Dec 2018 09:51:42 +0800</pubDate><description><![CDATA[在单片机中内存空间很小，主要是为了省硬件成本，如: Cortex m3/m4 的 64KB/192KB, Quectel M26 的 256KB/512KB 等等都不带动态内存管理。为了实现内存动态分配和释放，要么使用厂家库的动态内存管理接口，要么自己写动态内存管理。]]></description><category></category></item><item><title><![CDATA[C++面向对象编程原则及人类示例]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/78212458</link><guid>https://blog.youkuaiyun.com/kyee/article/details/78212458</guid><author>kyee</author><pubDate>Thu, 12 Oct 2017 11:02:10 +0800</pubDate><description><![CDATA[在 C++ 面向对象编程中，有很多开发人员无法把控类，以及应该如何编写。在编写类时
有几个原则必须遵循，这样可以使类拥有健壮性及可用性。人类示例 TPerson 描述了类的
生命力，以及类的属性、行为和事件。

   面向对象编程的二个基本特征：封装和继承。
   封装的目的是为了信息隐藏，并保证类数据成员的私有性和一致性，同时数据成员之间
是强耦合，而类与类之间应该弱耦合。

   继承的目的是为了扩充类的多样性，多继承和多态都是继承的扩展方式，而继承会增加
类与类之间的耦合性。]]></description><category></category></item><item><title><![CDATA[如何实现 RPC 框架的要点浅析]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/56831046</link><guid>https://blog.youkuaiyun.com/kyee/article/details/56831046</guid><author>kyee</author><pubDate>Fri, 24 Feb 2017 09:45:31 +0800</pubDate><description><![CDATA[简单的说，RPC 就是从一台主机上的进程 A 通过参数传递的方式调用另一台主机上的进程 B 中的一个函数，并得到返回的结果。因此 RPC 具有以下特点：
a. RPC 会隐藏底层的通讯细节，不需要直接处理如何通信及收发数据。
b. RPC 是一个请求响应模型。客户端发起调用请求，服务端返回请求响应，这类似于HTTP 的工作方式。
c. RPC 在使用形式上像调用本地函数一样去调用远程的函数。]]></description><category></category></item><item><title><![CDATA[基于 TCP 的通讯接口(TCP Utils)]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/52023381</link><guid>https://blog.youkuaiyun.com/kyee/article/details/52023381</guid><author>kyee</author><pubDate>Mon, 25 Jul 2016 14:40:56 +0800</pubDate><description><![CDATA[在 CentOS 6.5 x64 服务器中，单个服务端可以稳定 20 多万个连接同时在线及收发数据，且收发顺畅，这是经过实际使用及压力测试。TCP 通讯接口是对 socket 进行包装，只负责接收和发送数据，不参与应用程序的协议解析。通讯接口对接收和发送线程进行管理，简化了socket接口调用的复杂度。可能很多人会说，TCP 通讯相关接口和类库都很多，何必再造个轮子呢？话虽如此，但 TCPUtils 并不同于其它接口，其简单易用，且通过配置就可以实现大容量连接，并且具有高并发性。]]></description><category></category></item><item><title><![CDATA[百度云网盘-kyee_ye的分享]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/43922247</link><guid>https://blog.youkuaiyun.com/kyee/article/details/43922247</guid><author>kyee</author><pubDate>Tue, 24 Feb 2015 02:08:54 +0800</pubDate><description><![CDATA[百度云网盘-kyee_ye的分享https://pan.baidu.com/share/home?uk=3125087174#category/type=0优快云的下载太差劲了，若要更新则必须重新创建下载项，加上曾经创建专辑失败，导致到目前都无法创建专辑！还是百度云网盘方便，上载后分享出来即可，如有更新直接替换掉就行了！ 我的百度云网盘有很多好东东哦，欢迎大家下载！ [shares]   htt...]]></description><category></category></item><item><title><![CDATA[固定尺寸内存块的缓冲队列类及C++实现源码]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/40373093</link><guid>https://blog.youkuaiyun.com/kyee/article/details/40373093</guid><author>kyee</author><pubDate>Wed, 22 Oct 2014 11:08:40 +0800</pubDate><description><![CDATA[本文讲的缓冲队列为链接方式, 链接方式一般通过预分配一个结点作为接力点来实现无锁队列, 优点是实现简单, 缺点是浪费一个结点的内存, 当结点内存块尺寸较大时浪费就大了。如何不浪费一个结点内存的链接方式无锁队列? 当队列中只有一个结点时, 本缓冲队列中使用了原子锁进行操作, 这是一种平衡策略, 若读者有更好方法不妨告之一下!]]></description><category></category></item><item><title><![CDATA[远程调用内核接口的封装类(RCKObjs)]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/37561571</link><guid>https://blog.youkuaiyun.com/kyee/article/details/37561571</guid><author>kyee</author><pubDate>Tue, 08 Jul 2014 11:32:41 +0800</pubDate><description><![CDATA[远程调用内核接口的封装类(RCKObjs), RCK 包含 Application, Function, Connection, Command, Response 和 Fields 六大类。]]></description><category></category></item><item><title><![CDATA[远程调用内核接口(remote call kernel)]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/11615575</link><guid>https://blog.youkuaiyun.com/kyee/article/details/11615575</guid><author>kyee</author><pubDate>Thu, 12 Sep 2013 19:08:38 +0800</pubDate><description><![CDATA[RCK(remote call kernel 缩写)为远程调用内核, 其通讯协议为自定义数据流协议。
RCK 负责远程调用过程中的数据组织, 并不关心实际物理通讯协议, 实则属于逻辑层通讯
协议。
    RCK 通讯槽接口(RCKSlot)负责数据接收和发送, 属于通讯的适配层, 由第三方来实现
实际的数据传输接口。]]></description><category></category></item><item><title><![CDATA[并行处理之引用计数与状态的使用]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/8653649</link><guid>https://blog.youkuaiyun.com/kyee/article/details/8653649</guid><author>kyee</author><pubDate>Sat, 09 Mar 2013 14:17:30 +0800</pubDate><description><![CDATA[--------------------------------------------------------------------------------
标题: 并行处理之引用计数与状态的使用
作者: 叶飞虎
日期: 2013.03.09
------------------------------------------------------------------------]]></description><category></category></item><item><title><![CDATA[关于C++类库KYLib: 固定缓冲区的压缩/解压缩类源码]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/8568759</link><guid>https://blog.youkuaiyun.com/kyee/article/details/8568759</guid><author>kyee</author><pubDate>Mon, 04 Feb 2013 14:15:02 +0800</pubDate><description><![CDATA[固定缓冲区的压缩/解压缩类源码及测试例子: 
http://download.youkuaiyun.com/detail/kyee/5052133
固定缓冲区的压缩/解压缩算法，适用于网络传输数据包的压缩，具有压缩速度快、压缩率适中特点，而且压缩后数据缓冲区可控。
其中包含固定缓冲区的压缩类(TKYFixedPack)和解压缩类(TKYFixedUnpack)，源码如下：
// ===========]]></description><category></category></item><item><title><![CDATA[在单片机中, 64 位整数除以 32 位整数]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7829845</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7829845</guid><author>kyee</author><pubDate>Sat, 04 Aug 2012 11:53:39 +0800</pubDate><description><![CDATA[在单片机中, 64 位整数除以 32 位整数, 因为没有64位寄存器, 所以需要自己实现
// 64 位除以 32 位
Longword _DivEx(Longword  AHiVal, Longword  ALoVal, Longword ADivisor,
                Longword& AHiRet, Longword* ARemainder = NULL)
{]]></description><category></category></item><item><title><![CDATA[几种位操作的相关算法]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7829834</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7829834</guid><author>kyee</author><pubDate>Sat, 04 Aug 2012 11:48:35 +0800</pubDate><description><![CDATA[1. 字节的1位存放在2位的空间里, 如: 0xE3 -> 0xA82A
算法1:
   按位移位并进行位或运算
算法2:
   使用查表法
算法3:
   位的并行处理
 
// 1 位存放在 2 位的低位, 如: 0xE3 -> 0x5415
Word ZoomByte1(Byte AValue)
{
   Word result;

   // 计算
   res]]></description><category></category></item><item><title><![CDATA[查找相同项的双螺旋匹配算法]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7829803</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7829803</guid><author>kyee</author><pubDate>Sat, 04 Aug 2012 11:40:00 +0800</pubDate><description><![CDATA[--------------------------------------------------------------------------------
标题: 查找相同项的双螺旋匹配算法
作者: 叶飞虎
日期: 2012.07.16
--------------------------------------------------------------------------]]></description><category></category></item><item><title><![CDATA[关于 B+ tree 结点分裂的模型算法]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7829695</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7829695</guid><author>kyee</author><pubDate>Sat, 04 Aug 2012 11:02:10 +0800</pubDate><description><![CDATA[--------------------------------------------------------------------------------
标题: 关于 B+ tree 结点分裂的模型算法
作者: 叶飞虎
建立: 2011.04.13
-------------------------------------------------------------------]]></description><category></category></item><item><title><![CDATA[跨平台的 C++ 代码移植要点]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7829530</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7829530</guid><author>kyee</author><pubDate>Sat, 04 Aug 2012 10:08:52 +0800</pubDate><description><![CDATA[--------------------------------------------------------------------------------
标题: 跨平台的 C++ 代码移植要点
作者: 叶飞虎
日期: 2010.09.06
------------------------------------------------------------------------]]></description><category></category></item><item><title><![CDATA[日期时间与 time_t 相互转换]]></title><link>https://blog.youkuaiyun.com/kyee/article/details/7602570</link><guid>https://blog.youkuaiyun.com/kyee/article/details/7602570</guid><author>kyee</author><pubDate>Fri, 25 May 2012 16:54:29 +0800</pubDate><description><![CDATA[--------------------------------------------------------------------------------
标题: 日期时间与 time_t 相互转换
作者: 叶飞虎
日期: 2012.05.25
----------------------------------------------------------------------]]></description><category></category></item></channel></rss>