<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dew0927的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dew0927</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dew0927]]></copyright><item><title><![CDATA[盲猜原子变量、内存屏障、内存模型、锁之间的关系]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347998</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347998</guid><author>dew0927</author><pubDate>Mon, 30 Sep 2019 23:48:00 +0800</pubDate><description><![CDATA[1、atomic_flag 和atomic&lt;&gt;的区别，atomic_flag 无论无锁是多大代价（一些cpu可能无锁代价大），都保证atomic_flag是无锁的。atomic&lt;&gt;会视情况，可能是有锁的也可能是无锁的，哪个开销小选哪个。
2、C++内存模型可以被看作是C++程序和计算机系统（包括编译器，多核CPU等可能对程序进行乱序优化的软硬件）之间的契约，它...]]></description><category></category></item><item><title><![CDATA[四、c++总结------linux多线程服务端编程]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347997</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347997</guid><author>dew0927</author><pubDate>Sun, 18 Aug 2019 18:14:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/11373315.html]]></description><category></category></item><item><title><![CDATA[c++函数声明的位置对函数重载的影响]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347996</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347996</guid><author>dew0927</author><pubDate>Sat, 17 Aug 2019 14:16:00 +0800</pubDate><description><![CDATA[c++为了兼容c，也是采用（假）单遍编译。这特别影响函数重载决议（当c++编译器读到一个函数调用语句时，它必须从目前已看到的同名函数中选出最佳函数，哪怕后面的代码中出现了更合适的匹配）


 1 #include&lt;iostream&gt;
 2 using namespace std;
 3 void f(int a )
 4 {
 5     cout &lt;&...]]></description><category></category></item><item><title><![CDATA[lua调用dll demo]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347995</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347995</guid><author>dew0927</author><pubDate>Fri, 16 Aug 2019 18:00:00 +0800</pubDate><description><![CDATA[使用的是lua5.3
DllMain.cpp

 1 //生成的dll  是   lua_add53.dll
 2 //luaopen_lua_add
 3 extern "C" {
 4 #include "F:/lua_src/lua-5.3.5_Win64_vc15_lib/include/lua.h"  
 5 #include "F:/lua_src/lua-5....]]></description><category></category></item><item><title><![CDATA[三、分布式编程总结------linux多线程服务端编程]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347994</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347994</guid><author>dew0927</author><pubDate>Tue, 13 Aug 2019 22:19:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/11349002.html]]></description><category></category></item><item><title><![CDATA[二、多线程及服务器编程总结------linux多线程服务端编程]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347992</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347992</guid><author>dew0927</author><pubDate>Sun, 11 Aug 2019 17:05:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/11335609.html]]></description><category></category></item><item><title><![CDATA[一、智能指针及线程同步总结------linux多线程服务端编程]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347993</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347993</guid><author>dew0927</author><pubDate>Thu, 08 Aug 2019 00:05:00 +0800</pubDate><description><![CDATA[二、多线程及服务器编程总结------linux多线程服务端编程https://www.cnblogs.com/l2017/p/11335609.html
三、分布式编程总结------linux多线程服务端编程https://www.cnblogs.com/l2017/p/11349002.html
四、c++总结------linux多线程服务端编程https:/...]]></description><category></category></item><item><title><![CDATA[vscode remote wsl  的NoPermissions  permission denied问题]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347990</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347990</guid><author>dew0927</author><pubDate>Thu, 25 Jul 2019 15:56:00 +0800</pubDate><description><![CDATA[在 wsl这个目录code-insiders . 之后会报这个错
无法打开“wsl”: Unable to read file (NoPermissions (FileSystemError): Error: EACCES: permission denied, stat '/root/wsl')。
这个问题其实很简单，wsl是软连接，vscode应该是不支持打开软连接的。直...]]></description><category></category></item><item><title><![CDATA[tcp/udp注意事项]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347991</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347991</guid><author>dew0927</author><pubDate>Mon, 22 Jul 2019 23:50:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/11229290.html]]></description><category></category></item><item><title><![CDATA[ptmalloc tcmalloc jemalloc 总结的总结 及覆盖原理]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347988</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347988</guid><author>dew0927</author><pubDate>Sun, 14 Jul 2019 23:06:00 +0800</pubDate><description><![CDATA[windows下还有detours库可以hook

转载于:https://www.cnblogs.com/l2017/p/11186347.html]]></description><category></category></item><item><title><![CDATA[epoll源码解析翻译------说使用了mmap的都是骗子]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347989</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347989</guid><author>dew0927</author><pubDate>Wed, 08 May 2019 10:37:00 +0800</pubDate><description><![CDATA[本文地址
//https://www.cnblogs.com/l2017/p/10830391.html
//https://blog.youkuaiyun.com/li_haoren
select poll epoll这三个都是对poll机制的封装。
只是select跟poll傻了点
epoll里并没有找到mmap相关的代码。并没有用到内核态内存映射到用户态的技术。但这个技术是存在的。d...]]></description><category></category></item><item><title><![CDATA[重点思维导图------redis深度历险]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347986</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347986</guid><author>dew0927</author><pubDate>Mon, 06 May 2019 23:41:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/10823005.html]]></description><category></category></item><item><title><![CDATA[全文思维导图------redis设计与实现]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347987</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347987</guid><author>dew0927</author><pubDate>Sat, 04 May 2019 16:18:00 +0800</pubDate><description><![CDATA[转载于:https://www.cnblogs.com/l2017/p/10808802.html]]></description><category></category></item><item><title><![CDATA[有大佬拉我一把麽，现在广州还有c++后台实习招聘麽]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347984</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347984</guid><author>dew0927</author><pubDate>Wed, 01 May 2019 09:41:00 +0800</pubDate><description><![CDATA[有大佬拉我一把麽，现在广州还有c++后台实习招聘麽

转载于:https://www.cnblogs.com/l2017/p/10799183.html]]></description><category></category></item><item><title><![CDATA[redis所有数据结构及对象------redis设计与实现]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347985</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347985</guid><author>dew0927</author><pubDate>Mon, 29 Apr 2019 23:50:00 +0800</pubDate><description><![CDATA[建议点开原图看




转载于:https://www.cnblogs.com/l2017/p/10793601.html]]></description><category></category></item><item><title><![CDATA[epoll好文章]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347982</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347982</guid><author>dew0927</author><pubDate>Fri, 19 Apr 2019 22:44:00 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/apprentice89/p/3234677.html
https://www.jianshu.com/p/aa486512e989
https://cloud.tencent.com/developer/article/1005481


最后看看epoll独有的两种模式LT和ET。无论是LT和ET模式，都适用于以上所说的流程...]]></description><category></category></item><item><title><![CDATA[互斥锁和条件变量锁注意事项]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347983</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347983</guid><author>dew0927</author><pubDate>Fri, 19 Apr 2019 00:07:00 +0800</pubDate><description><![CDATA[如果互斥锁变量是静态分配的，那么我们可以把它初始化成常值PTHREAD_MUTEX_INITIALIZER

例如 ：static pthread_mutex_t lock =PTHREAD_MUTEX_INITIALIZER;

如果互斥锁是动态分配的（例如malloc new）或者分配在共享内存区中，那么我们在运行之时通过调用pthread_mutex_init函数初始化...]]></description><category></category></item><item><title><![CDATA[Posix信号]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347980</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347980</guid><author>dew0927</author><pubDate>Thu, 18 Apr 2019 22:40:00 +0800</pubDate><description><![CDATA[Posix实时信号的值在SIGRTMIN和SIGRMAX之间（包括两者）。

如果需要实时行为，我们必须使用在SIGRTMIN和SIGRMAX之间的实时信号，且在安装信号处理程序时必须给sigaction指定SA_SIGINFO标志。
实时行为指
　　信号是排队的。就是说，如果同一信号产生了三次，它就递交了三次。以先进先出顺序排队。对于不排队的信号来说，产生了三次的信号可能只递交...]]></description><category></category></item><item><title><![CDATA[Posix消息队列注意事项]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347981</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347981</guid><author>dew0927</author><pubDate>Thu, 18 Apr 2019 22:31:00 +0800</pubDate><description><![CDATA[随内核的持续性
读总是返回最高优先级的最早消息。
当往一个空队列放置一个消息时，允许产生一个信号或启动一个线程。
可认为是一个消息链表
队列中每个消息具有
　　1.一个无符号整数优先级
　　2.消息的数据部分长度（可以为0）
　　3.数据本身（如果长度）

链表头中为当前队列的两个属性：队列中允许的最大消息数（mq_mqxmsg）以及每个消息的最大大小（mq_msgsi...]]></description><category></category></item><item><title><![CDATA[管道/FIFO注意事项]]></title><link>https://blog.youkuaiyun.com/dew0927/article/details/102347978</link><guid>https://blog.youkuaiyun.com/dew0927/article/details/102347978</guid><author>dew0927</author><pubDate>Wed, 17 Apr 2019 15:14:00 +0800</pubDate><description><![CDATA[管道
1. 其本质是一个伪文件(实为内核缓冲区)
2. 由两个文件描述符引用，一个表示读端，一个表示写端。
3. 规定数据从管道的写端流入管道，从读端流出。
管道的原理: 管道实为内核使用环形队列机制，借助内核缓冲区(4k)实现。
管道的局限性：
数据一旦被读走，便不在管道中存在，不可反复读取。
缓冲区是有限
由于管道采用半双工通信方式。因此，数据只能在一个方向上流动。...]]></description><category></category></item></channel></rss>