自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 分布式系统中不可靠的TCP

TCP协议为应用层提供了可靠的、面向连接传输服务。 TCP协议是最优秀的传输层协议之一,其设计初衷就是在不可靠的网络之上建立传输服务。 TCP协议通过为传输的每一个字节设置顺序递增的列号,由接收方在收到数据后按重组并发送确认信息,当发现数据包丢失时,TCP协议重传丢失的包,从而TCP协议解决了网络数据包丢失的问题和数据包乱序的问题。TCP协议为每个TCP数据段使用32位的检验从而检查数据错误问题。

2016-02-25 13:03:13 1497

原创 makefile 中 $@ $^ %< ar rz使用

1.源程序的编译假设我们有如下程序/* main*/#include <stdio.h>#include "test1.h"#include "test2.h"void main(){ test1(); test2(); printf("main\n");}/*test1*/#include <stdio.h>void test1(){ printf(

2016-02-23 13:18:04 4323

原创 fuser 命令

fuser 可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息.常用选项 -a 显示所有命令行中指定的文件,默认情况下被访问的文件才会被显示。 -c 和-m一样,用于POSIX兼容。 -k 杀掉访问文件的进程。如果没有指定-signal就会发送SIGKILL信号。 -i 杀掉进程之前询问用户,如果没有-k这个选项会被忽略。 -l 列出所有已

2016-02-19 16:00:49 537

原创 双检查加锁优化模式

当代码的临界区必须在程序执行期内以线程安全的方式获得一次锁时,双检查加锁优化设计模式能减少争用和同步开销。 例子:class Singleton{public: static Singleton *instance() { if(m_instance == NULL) { m_instance = new Singleto

2016-02-18 12:26:14 572

原创 c++ 惯用法:定界加锁

定界加锁能确保控制进入到某一范围时,自动获取锁,而当控制离开该范围时,自动释放锁。 代码示例:class Mutex{public: Mutex() { pthread_mutex_init(&_lock, NULL); } virtual ~Mutex() { pthread_mutex_destroy(&_lock);

2016-02-17 15:21:14 748

原创 pthread_once

有时候我们需要对一些posix变量只进行一次初始化,如果进行多次初始化程序就会出现错误。单线程比较容易,但是在多线程程序设计中,事情就变的复杂的多。如果我们需要对一个posix变量静态的初始化,可使用的方法是用一个互斥量对该变量的初始话进行控制。但有时候我们需要对该变量进行动态初始,pthread_once就会方便的多。 函数原形:pthread_once_t once_control=PTHREA

2016-02-17 11:34:08 395

原创 接受器-连接器模式

接受器-连接器模式将网络化系统中的对等体的连接和初始化工作,与该服务在连接和初始化之后所执行的处理分开。 一、结构 接收器-连接器模式有六个关键的参与者: 1.传输端点。如TCP端口号和IP地址。 2.传输句柄。封装传输端点。如一个套接字句柄。 3.服务处理程序。实现网络化应用程序中端到端的服务。 4.接收器。被动地连接和初始化一个相关的服务处理程序。 5.连接器。主动地连接和初始化一

2016-02-16 16:20:06 747

原创 rz sz命令

在linux中rz 和 sz 命令允许开发板与主机通过串口进行传递文件了,下面我们就来简单的介绍一下rz 和 sz 命令的例子。rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具。 优点就是不用再开一个sftp工具登录上去上传下载文件。 sz:将选定的文件发送(send)到本地机器 rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器

2016-02-16 11:55:32 525

原创 std::set

set集合容器实现了红黑树(Red-Black Tree)的平衡二叉检索树的的数据结构,构造set集合的主要目的是为了快速检索。Internally, the elements in a set are always sorted following a specific strict weak ordering criterion indicated by its internal compari

2016-02-16 11:20:11 308

转载 Google GFS文件系统深入分析

本文是一篇论文,英文原文标题为The Google File System,在Google Labs上公布,由blademaster.ixiezi.com的博主Alex翻译为中文,Google GFS文件系统。现在云计算渐成潮流,对大规模数据应用、可伸缩、高容错的分布式文件系统的需求日渐增长。Google根据自身的经验打造的这套针对大量廉价客户机的分布式文件系统已经广泛的在Google内部进行

2016-02-15 17:23:07 4338

原创 正则表达式-元字符

下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为:字符描述\将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。^匹配输入字符串的开始位置。如果设置了 RegE

2016-02-04 15:16:15 336

转载 正则表达式 - 语法

正则表达式 - 语法正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。列目录时, dir *.txt或ls *.txt中的*.txt就不是一个正则表达式,因为这里*与正则式的*的含义是不同的。构造正则表达式的方法和创建数学表达式的方法一样。也就是用多

2016-02-04 14:25:48 237

转载 Lua开源项目

Project CatalogFor a listing of projects by tags click here. You might also want to see the FAQ.aabelhas activerdf aeslua ajato alien alsedit alt-getopt alua andes apoc

2016-02-03 14:04:35 2689

原创 设计模式C++实现:管理者模式

动机:为管理一组相关对象的实例化和访问提供统一的接口。管理者使用和扩展单例模式,它们本身就是单例,并且它们可能确保它们管理的对象是唯一的。代码示例:#include <iostream>#include <string>#include <map>using namespace std;class Animal{public: virtual void eat(){cout<<"a

2016-02-02 20:06:11 3389 1

转载 Lua中的元表与元方法

前言元表对应的英文是metatable,元方法是metamethod。我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算。在Lua中也有这个道理,两个table类型的变量,你是无法直接进行“+”操作的,如果你定义了一个指定的函数,就可以进行了。那这篇博文就是主要讲的如何定义这个指定的函数,这个指定的函数是什么?希望对学习Lua的朋友有帮助。

2016-02-02 11:41:53 329

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除