<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Alisa_xf的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alisa_xf</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alisa_xf]]></copyright><item><title><![CDATA[C++中的explicit关键字]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/89674370</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/89674370</guid><author>Alisa_xf</author><pubDate>Mon, 29 Apr 2019 14:38:56 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/tianmingdyx/article/details/79823470

1 莫名其妙的explicit



  在很多C++代码中，定义类的构造函数的时候，往往会在前面加一个explicit关键字。先来看cppreference上面对它的解释：

The explicit specifier specifies that a co...]]></description><category></category></item><item><title><![CDATA[编译防火墙——C++的Pimpl惯用法解析]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/89670408</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/89670408</guid><author>Alisa_xf</author><pubDate>Mon, 29 Apr 2019 10:56:21 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/lihao21/article/details/47610309

  Pimpl(pointer to implementation, 指向实现的指针)是一种常用的，用来对“类的接口与实现”进行解耦的方法。这个技巧可以避免在头文件中暴露私有细节(见下图1)，因此是促进API接口与实现保持完全分离的重要机制。但是Pimpl并不是严格...]]></description><category></category></item><item><title><![CDATA[muduo网络库架构总结(系列)]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88906496</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88906496</guid><author>Alisa_xf</author><pubDate>Sat, 30 Mar 2019 07:44:36 +0800</pubDate><description><![CDATA[出处：http://www.cnblogs.com/ailumiyana/

目录

muduo网络库简介
	muduo网络库模块组成
	Recator反应器
		EventLoop的两个组件
		TimerQueue定时器
			Eventfd
		
		Connector和Acceptor连接器和监听器
		Acceptor
			Connector
		
		TcpConnection
	...]]></description><category></category></item><item><title><![CDATA[muduo 架构解析]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88906348</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88906348</guid><author>Alisa_xf</author><pubDate>Sat, 30 Mar 2019 07:12:42 +0800</pubDate><description><![CDATA[ 原文：https://blog.youkuaiyun.com/Swartz2015/article/details/56675082

muduo是一个基于Reactor模式的C++网络库。它采用非阻塞I/O模型，基于事件驱动和回调。我们不仅可以通过muduo来学习linux服务端多线程编程，还可以通过它来学习C++11。
    Reactor是网络编程的一般范式。我们这里从reactor模式为出发点...]]></description><category></category></item><item><title><![CDATA[wireshark抓包常见提示含义解析]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734350</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734350</guid><author>Alisa_xf</author><pubDate>Fri, 22 Mar 2019 10:22:45 +0800</pubDate><description><![CDATA[原文转自：http://blog.sina.com.cn/s/blog_987e00020102wq60.html

      http://www.cnblogs.com/redsmith/p/5462547.html

=========================================================================

1．[Pa...]]></description><category></category></item><item><title><![CDATA[TCP-IP详解：滑动窗口（Sliding Window）]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734297</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734297</guid><author>Alisa_xf</author><pubDate>Fri, 22 Mar 2019 10:21:02 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/wdscq1234/article/details/52444277

TCP的优势

从传输数据来讲，TCP/UDP以及其他协议都可以完成数据的传输，从一端传输到另外一端，TCP比较出众的一点就是提供一个可靠的，流控的数据传输，所以实现起来要比其他协议复杂的多，先来看下这两个修饰词的意义：

1. Reliability ，提供TCP的可靠性，...]]></description><category></category></item><item><title><![CDATA[TCP Win=0,Len=0]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734274</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88734274</guid><author>Alisa_xf</author><pubDate>Fri, 22 Mar 2019 10:19:57 +0800</pubDate><description><![CDATA[接受端回应发送端中的win大小表示接受端还能够接受多少数据，发送端下次发送的数据大小不能超过回应中win的大小

win大小为0，表示接收端不能够再接受数据。












...]]></description><category></category></item><item><title><![CDATA[组播中的setsockopt]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88566473</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88566473</guid><author>Alisa_xf</author><pubDate>Fri, 15 Mar 2019 09:54:30 +0800</pubDate><description><![CDATA[组播主机需要的环境
 如果要在一台主机上运行多播程序，这台主机支持IGMP协议。此协议用于加入一个多播组，离开一个多播组等而向路由器发送命令。现在的IGMP协议最高版本为v3(rfc3376)，现在有很少数的ＵＮＩＸ实现了，WindowXp己实现。大部分主机，路由器实现的版本为v2（rfc2236），而v1版本（rfc1112）的运行是从v2中可以实现。V2与v1的区别就是把V１版本中...]]></description><category></category></item><item><title><![CDATA[IP、TCP、UDP数据包长度问题]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88566203</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88566203</guid><author>Alisa_xf</author><pubDate>Fri, 15 Mar 2019 09:49:48 +0800</pubDate><description><![CDATA[概念：

 以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的.
 这个1500字节被称为链路层的MTU(最大传输单元).  但这并不是指链路层的长度被限制在1500字节,其实这这个MTU指的是链路层的数据区.并不包括链路层的首部和尾部的18个字节.
 所以,事实上,这个1500字节就是网络层IP数据报的长度限制.
 因为IP数据报...]]></description><category></category></item><item><title><![CDATA[控制台程序隐藏的四种方法总结]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88288218</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88288218</guid><author>Alisa_xf</author><pubDate>Thu, 07 Mar 2019 10:24:41 +0800</pubDate><description><![CDATA[学习计算机，往往先从Windows环境下学习编程，学习编程，往往从C学起，学习C，往往又从控制台程序学习，何为控制台，就是那个黑框白字的界面。对于这样一个最初认为奇陋无比而现在认为无所不能的编程平台，有时候需要将界面隐藏起来。那么如何做呢？

方法1：
    在头文件下加上一句预处理命令：

#pragma comment( linker, &quot;/subsystem:\&quot;windows\...]]></description><category></category></item><item><title><![CDATA[Win32 API编程：使用CreateProcess创建新进程]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88161303</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88161303</guid><author>Alisa_xf</author><pubDate>Tue, 05 Mar 2019 06:39:21 +0800</pubDate><description><![CDATA[1. CreateProcess
说明：
WIN32API函数CreateProcess用来创建一个新的进程和它的主线程，这个新进程运行指定的可执行文件。

函数原型：
BOOL CreateProcess
(
 LPCTSTR lpApplicationName,
 LPTSTR lpCommandLine,
 LPSECURITY_ATTRIBUT...]]></description><category></category></item><item><title><![CDATA[C++11常用特性的使用经验总结]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88049491</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88049491</guid><author>Alisa_xf</author><pubDate>Fri, 01 Mar 2019 09:55:26 +0800</pubDate><description><![CDATA[转自：http://www.cnblogs.com/feng-sc

　　C++11已经出来很久了，网上也早有很多优秀的C++11新特性的总结文章，在编写本博客之前，博主在工作和学习中学到的关于C++11方面的知识，也得益于很多其他网友的总结。本博客文章是在学习的基础上，加上博主在日常工作中的使用C++11的一些总结、经验和感悟，整理出来，分享给大家，希望对各位读者有帮助，文章中的总结可能存...]]></description><category></category></item><item><title><![CDATA[Windows进程间通信实例--共享内存]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/88028029</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/88028029</guid><author>Alisa_xf</author><pubDate>Thu, 28 Feb 2019 14:42:59 +0800</pubDate><description><![CDATA[共享内存--是允许两个不相关的进程访问同一个逻辑内存，共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到他们自己的地址空间中，所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据，所做的改动将立即影响到可以访问同一段共享内存的任何其他进程。


    采用共享内...]]></description><category></category></item><item><title><![CDATA[RTP协议全解析（H264码流和PS流）]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928038</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928038</guid><author>Alisa_xf</author><pubDate>Tue, 26 Feb 2019 07:19:05 +0800</pubDate><description><![CDATA[写在前面：RTP的解析，网上找了很多资料，但是都不全，所以我力图整理出一个比较全面的解析，

其中借鉴了很多文章，我都列在了文章最后，在此表示感谢。

互联网的发展离不开大家的无私奉献，我决定从我做起，希望大家支持。

 

原创不易，转载请附上链接，谢谢http://blog.youkuaiyun.com/chen495810242/article/details/39207305



1、RTP Hea...]]></description><category></category></item><item><title><![CDATA[NALU 头部解析]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928037</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928037</guid><author>Alisa_xf</author><pubDate>Tue, 26 Feb 2019 07:17:15 +0800</pubDate><description><![CDATA[为了防止自己找不到原文，所以保存。原文：点击打开链接

 

一、序言

h264常见的帧头数据为：

00 00 00 01 67    (SPS)

00 00 00 01 68    (PPS)

00 00 00 01 65    ( IDR 帧)

00 00 00 01 61    (P帧)

等等，那么他们代表的意思是什么呢？

二、start code

start code有两种...]]></description><category></category></item><item><title><![CDATA[视频H264编解码知识整理]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928036</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928036</guid><author>Alisa_xf</author><pubDate>Tue, 26 Feb 2019 07:16:23 +0800</pubDate><description><![CDATA[
简介
网络提取层(NAL network abstraction layer )和视频编码层(VCL video coding)
码率、帧率、分辨率
其它
总结


简介

视频编解码网上介绍很多，整理了不少笔记，经过近一年的学习，把整理的笔记反馈到社区，也加深一遍自己的理解。欢迎指正错误和讨论学习，谢谢浏览。

H264是一种视频压缩标准。
根据不同类别，编码器会使用不同类型的帧，I帧、P帧和...]]></description><category></category></item><item><title><![CDATA[详解大端模式和小端模式]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928035</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/87928035</guid><author>Alisa_xf</author><pubDate>Tue, 26 Feb 2019 07:14:31 +0800</pubDate><description><![CDATA[一、大端模式和小端模式的起源

        关于大端小端名词的由来，有一个有趣的故事，来自于Jonathan Swift的《格利佛游记》：Lilliput和Blefuscu这两个强国在过去的36个月中一直在苦战。战争的原因：大家都知道，吃鸡蛋的时候，原始的方法是打破鸡蛋较大的一端，可以那时的皇帝的祖父由于小时侯吃鸡蛋，按这种方法把手指弄破了，因此他的父亲，就下令，命令所有的子民吃鸡蛋的时候，必...]]></description><category></category></item><item><title><![CDATA[vs2010中查看内存和寄存器]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/86220772</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/86220772</guid><author>Alisa_xf</author><pubDate>Thu, 10 Jan 2019 11:19:46 +0800</pubDate><description><![CDATA[今天讲一下如何从VS2010中查看内存和寄存器状态，一般来讲，只要从事C/C++编程的人，基本上对于这篇文章完全可以略过了，但写这篇文章的初衷在于，自己也是从这一步中过来的，记得当年自己其实也不知道如何快速使用VS中各种工具，导致花了很多时间在查找资料上面。所以，本文基本上可以说是面向菜鸟级选手了。废话不多说，直接上菜。。。

一、查看寄存器

通常来说，在进行C或C++编程的时候，对于寄存器的查...]]></description><category></category></item><item><title><![CDATA[回调函数]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/84343880</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/84343880</guid><author>Alisa_xf</author><pubDate>Thu, 22 Nov 2018 16:20:00 +0800</pubDate><description><![CDATA[实际工作中，对于回调函数一直是我不愿意去触碰的东西，一来由于被很多人搞得神秘兮兮的以为是很高深难懂的技术，二来在一般情况下通过互相包含类指针也能够解决问题，所以一直就不想去研究这个东东，最近一个项目中被经理逼着使用了回调函数，切切实实体会到了它的好处，代码中类之间的关系再也不那么错综复杂了，类A想告诉类B一个事情再也不需要在A中定义B的指针了，定义回调函数即可。下面把我理解的回调函数写出来，抛出一...]]></description><category></category></item><item><title><![CDATA[音频和视频sdp]]></title><link>https://blog.youkuaiyun.com/Alisa_xf/article/details/83822575</link><guid>https://blog.youkuaiyun.com/Alisa_xf/article/details/83822575</guid><author>Alisa_xf</author><pubDate>Wed, 07 Nov 2018 13:56:14 +0800</pubDate><description><![CDATA[1. 视频

m=video 1234 RTP/AVP 96        
a=rtpmap:96 H264
a=framerate:15c=IN IP4 172.18.168.45

1.m=是媒体级会话的开始处，video：媒体类型 ； 1234：端口号    ；RTP/AVP：传输协议   ；96：rtp头中的payload格式
2.a=rtpmap：证明是动态绑定的进一步说明    ；9...]]></description><category></category></item></channel></rss>