<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[水滴石穿]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/L19920622</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; L19920622]]></copyright><item><title><![CDATA[并行复制的从库执行FTWRL死锁]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/78867099</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/78867099</guid><author>L19920622</author><pubDate>Thu, 21 Dec 2017 19:49:27 +0800</pubDate><description><![CDATA[最近线上执行备份的从库遇到两个死锁，show full processlist的状态图如下，数据库版本基本是官方5.7.18版本，我们内部做了些许修改，与此次死锁无关。 
先说一下结论，图一中162线程是执行innobackup执行的flush tables with read lock; 
144是sql线程，并行复制中的Coordinator线程，145/146是并行复制的worker线程，14]]></description><category></category></item><item><title><![CDATA[我的MySQL配置文件]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/78468202</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/78468202</guid><author>L19920622</author><pubDate>Tue, 07 Nov 2017 15:11:04 +0800</pubDate><description><![CDATA[[mysql]
prompt = [\\u@\\h][\\d]>\\_

[mysqld]
# basic settings #
user = 
report-host = 
report-port =3306 

server-id= 
port = 3306
socket=/tmp/mysql_3306.sock
datadir = ....../mysql-5.7/d]]></description><category></category></item><item><title><![CDATA[MySQL逻辑并行复制的实现]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/78467762</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/78467762</guid><author>L19920622</author><pubDate>Tue, 07 Nov 2017 14:44:54 +0800</pubDate><description><![CDATA[一、并行复制主库涉及到三个部分

1、binlog类保持两个值

/* Committed transactions timestamp */

Logical_clock max_committed_transaction;

/* "Prepared" transactions timestamp */

Logical_clock transaction_counter;]]></description><category></category></item><item><title><![CDATA[MySQL源码阅读之半同步相关]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/78467623</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/78467623</guid><author>L19920622</author><pubDate>Tue, 07 Nov 2017 14:30:16 +0800</pubDate><description><![CDATA[*******************************************************************

dump线程的执行逻辑

主机收到COM_BINLOG_DUMP_GTID 执行com_binlog_dump_gtid （sql_parse.cc）

COM_BINLOG_DUMP 执行 com_binlog_dump 





]]></description><category></category></item><item><title><![CDATA[记一次vmware centos虚拟机磁盘空间不够的经历]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/52869088</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/52869088</guid><author>L19920622</author><pubDate>Thu, 20 Oct 2016 10:09:34 +0800</pubDate><description><![CDATA[安装centos虚拟机时分配了20G的磁盘空间，经过长年累月的使用， 至今日，在升级gcc的过程中出现磁盘空间不够的提示，于是首先df查看磁盘使用情况

（图为增加分区，删除部分文件后的结果图，处理之前Use%基本达到100%）。
增加磁盘有两种办法，一扩容当前硬盘，二增加一块硬盘。我采用的是增加一块硬盘。
1.关机，虚拟机设置，点击添加硬盘，输入容量，一路next默认就可。

2，添]]></description><category></category></item><item><title><![CDATA[基于条件变量和互斥量同步的三线程顺序打印abc（10次）实现]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48468649</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48468649</guid><author>L19920622</author><pubDate>Tue, 15 Sep 2015 15:53:01 +0800</pubDate><description><![CDATA[先看代码
//创建三个线程顺序打印abc
//利用条件变量加互斥量实现
//
#include
#include
#include
#include
#include//线程相关的头文件

int i=0;
int n=0;
//声明互斥量，条件变量
pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t cond=PTHR]]></description><category></category></item><item><title><![CDATA[linux基于信号量同步的共享内存IPC实现]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48344613</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48344613</guid><author>L19920622</author><pubDate>Thu, 10 Sep 2015 15:56:27 +0800</pubDate><description><![CDATA[linux常见IPC方式有：管道，有名管道，信号量，消息队列，共享内存，socket套接字。共享内存是最快的IPC方式。
本文是具体别称实现共享内存的IPC，一个程序向内存写数据，另一个程序读数据，共享内存牵扯到同步的问题，一般有三种方案可以实现共享资源的同步
信号量，记录锁和互斥量。
       使用信号量，首先服务端创建一个只含一个信号的信号量集合，并初始化为1。占据资源，则以sem_]]></description><category></category></item><item><title><![CDATA[2015年秋季腾讯校园招聘开发岗笔试题 四道大题三、四]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48262507</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48262507</guid><author>L19920622</author><pubDate>Mon, 07 Sep 2015 10:41:55 +0800</pubDate><description><![CDATA[3. 如图所示，系统中有三个进程 Producer ， Transmitter 和 Consumer 。 Producer 和 Transmitter 共用缓冲区 ProduceBuf ， Consumer 和 Transmitter 共用缓冲区 ConsumeBuf 。

 

Producer 进程负责不断地将输入信息送入 ProduceBuf ； Transmitter 进程负责从]]></description><category></category></item><item><title><![CDATA[2015年秋季腾讯校园招聘开发岗笔试题 四道大题之一]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48262295</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48262295</guid><author>L19920622</author><pubDate>Mon, 07 Sep 2015 10:29:38 +0800</pubDate><description><![CDATA[1.      在一组数的编码中，若任意两个相邻的代码只有一位二进制数不同，则称这种编码为格雷码（ Gray
 Code ）。请编写一个函数，使用递归方法生成 N 位的格雷码，并且保证这个函数的健壮性。
这是一道leetcode的原题https://leetcode.com/problems/gray-code/，关于二进制数i对应的格雷码j有如下关系j=i^(i>>1);
比较简单，非递归]]></description><category></category></item><item><title><![CDATA[2015年秋季腾讯校园招聘开发岗笔试题 四道大题之二]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48261261</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48261261</guid><author>L19920622</author><pubDate>Mon, 07 Sep 2015 09:27:43 +0800</pubDate><description><![CDATA[题目:2. 有下图的题解，请用 C/C++ 代码来列出满足下图 0-100 内的所有答案。


分析：用a1--a9表示九个数，其中a3=9，根据图中的信息，可以列出如下六个方程，
a1+a2-9=4       (1)
a4-a5*a6=4      (2)
a7+a8-a9=4      (3)
a1+a4/a7=4      (4)
a2-a5*a8=4       (5)]]></description><category></category></item><item><title><![CDATA[python2 与 python3 语法区别]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48153409</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48153409</guid><author>L19920622</author><pubDate>Tue, 01 Sep 2015 09:08:37 +0800</pubDate><description><![CDATA[原文地址http://old.sebug.net/paper/books/dive-into-python3/porting-code-to-python-3-with-2to3.html
hide table of contents

↑ 显示完整目录概述#print语句#Unicode字符串#全局函数unicode()#long 长整型##字典类方法has_key()#返回列表的字典类方]]></description><category></category></item><item><title><![CDATA[socket 可读 可写 条件]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/48153209</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/48153209</guid><author>L19920622</author><pubDate>Tue, 01 Sep 2015 08:47:49 +0800</pubDate><description><![CDATA[一、
下列四个条件中的任何一个满足时,socket准备好读: 
 1.socket接收缓冲区中已经接收的数据的字节数大于等于socket接收缓冲区低潮限度的当前值;对这样的socket的读操作不会阻塞,并返回一个大于0的值(即:准备好读入的数据的字节数).我们可以用socket选项SO_RCVLOWAT来设置此低潮限度,对于TCP和UDPsocket,其缺省值为1;

 2.连接的读这一半]]></description><category></category></item><item><title><![CDATA[leetcode 241  Different Ways to Add Parentheses]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/47092679</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/47092679</guid><author>L19920622</author><pubDate>Mon, 27 Jul 2015 22:24:45 +0800</pubDate><description><![CDATA[貌似是个新题，题目如下：


Given a string of numbers and operators, return all possible results from computing all the different possible ways to group numbers and operators. The valid operators are+, - and *.]]></description><category></category></item><item><title><![CDATA[C++STL之vector，实现属于自己的my_vector]]></title><link>https://blog.youkuaiyun.com/L19920622/article/details/44831487</link><guid>https://blog.youkuaiyun.com/L19920622/article/details/44831487</guid><author>L19920622</author><pubDate>Thu, 02 Apr 2015 14:09:36 +0800</pubDate><description><![CDATA[直接上代码
#include
//#include "my_vector.cpp"

template 
class My_Vector
{
public:
    typedef elementType* iterator;
    My_Vector(); //
    ~My_Vector(); //
    int size();   //
    void reserve(int ne]]></description><category></category></item></channel></rss>