排序:
默认
按更新时间
按访问量

skynet如何启动一个lua服务

skynet是如何启动一个lua语言编写的服务的的呢?skynet服务,在skynet框架中,具体是以什么形式存在的呢?     每个skynet进程在启动时,都会启动一个lua层的launcher服务,该服务主要负责skynet运作期间,服务的创建工作。我们在lua层创建一个lua层服务时...

2018-02-27 11:20:24

阅读数:65

评论数:0

muduo库的PollPoller类剖析

转载自:http://blog.csdn.net/freeelinux/article/details/53457060muduo库中唯一使用面向对象的地方就在Poller,它有两个派生类,分别是PollPoller和EPollPoller。可以实现两种I/O多路复用机制。PollerPoller...

2018-02-14 14:01:45

阅读数:53

评论数:0

muduo库的EpollPoller剖析

EpollPoller,是muduo库对I/O复用机制epoll的封装,不过默认使用的是EpollPoller。在EventLoop中初始化构造poller_,调用newDefaultPoller(this),构造默认的poller。EventLoop::EventLoop() : loo...

2018-02-14 11:38:07

阅读数:34

评论数:0

muduo的日志库分析四之AsyncLogging类

用一个背景线程负责收集日志消息并写入日志文件,其它业务线程只管往这个“日志线程”发送日志消息,这称为"异步日志"。在多线程服务程序中,异步日志(也可叫“非阻塞日志”)是必需的。假如在网络IO线程或业务线程中直接写日志,写操作偶尔可能阻塞一会儿,业务中的响应请求可能会超时,或者耽...

2018-02-07 11:10:57

阅读数:44

评论数:0

muduo的日志库分析三之LogFile类

LogFile类图 LogFile类主要负责日志的滚动,日志滚动有两种条件,一种是日志文件大小达到预设值,另一种是时间到达超过当天。由几个成员变量来控制日志滚动。 // 基本的文件名,日志文件名由基本文件名和时间日期等元素构造 const string basename_; ...

2018-02-07 10:44:35

阅读数:44

评论数:0

muduo的日志库分析二之Logger类

github地址: https://github.com/chenshuo/muduo/blob/master/muduo/base/Logging.h https://github.com/chenshuo/muduo/blob/master/muduo/base/Logging.cc L...

2018-02-07 10:30:37

阅读数:41

评论数:0

muduo的日志库分析一之LogStream

muduo日志库是C++ stream风格,这样用起来更自然,不必费心保持格式字符串和参数类型的一致性,可以随用随写,而且是类型安全的。 stream风格的另一个好处是当输出的日志级别高于语句的日志级别是,打印日志是个空操作,运行是开销接近零,而printf风格不易做到。 muduo没...

2018-02-07 10:18:35

阅读数:46

评论数:0

C++ 中线程安全的对象生命期管理概要二

《Linux多线程服务端编程》的1.11节以对象池为例子讲解了shared_ptr技术与陷阱。 假设有 Stock 类,代表一只股票的价格。每一只股票有一个惟一的字符串标识,比如 Google 的 key 是 "NASDAQ:GOOG",IBM 是 "NYS...

2018-02-06 21:09:46

阅读数:28

评论数:0

C++ 中线程安全的对象生命期管理概要一

在这里,对《Linux多线程服务端编程》的第一章:线程安全的对象生命期管理的概要整理,这章的具体内容见陈硕的博客:http://blog.csdn.net/Solstice/article/details/5238671。 如何避免对象析构时可能存在的竞态条件(race conditio...

2018-02-06 21:01:48

阅读数:21

评论数:0

借shared_ptr实现copy-on-write(2)

转载自:http://blog.csdn.net/solstice/article/details/3351751 借shared_ptr实现copy-on-write 场景: 一个多线程的C++程序,24h x 5.5d运行。有几个工作线程ThreadW{0,1,2,3},处理...

2018-02-05 16:50:00

阅读数:26

评论数:0

借shared_ptr实现copy-on-write (1)

在《Linux多线程服务端编程使用muduoC++网络库》2.8节说“借shared_ptr实现copy-on-write”。那么copy-on-write是怎样的技术?     COW(Copy-On-Write)通过浅拷贝(shallow copy)只复制引用而避免复制值;当的确需要进行写入...

2018-02-05 16:45:20

阅读数:39

评论数:0

C++之不完全类型

在muduo源代码中,会看到这样的代码: typedef char T_must_be_complete_type[sizeof(T) == 0 ? -1 : 1]; T_must_be_complete_type dummy; (void) dummy;    在C++中,类型有Compl...

2018-02-04 18:00:15

阅读数:43

评论数:0

muduo库的ThreadLocal类剖析

转载自:http://blog.csdn.net/freeelinux/article/details/53431275 首先来看一个概念:线程特定数据 >>>在单线程程序中,我们经常用全局变量共享数据。多线程环境下,全部变量被所有线程所共有。 >>>...

2018-02-04 17:52:51

阅读数:32

评论数:0

Linux中的线程局部存储(二)

转载自:http://blog.csdn.net/cywosp/article/details/26469435 在Linux中还有一种更为高效的线程局部存储方法,就是使用关键字__thread来定义变量。__thread是GCC内置的线程局部存储设施(Thread-Local Stor...

2018-02-04 17:00:41

阅读数:369

评论数:0

Linux中的线程局部存储(一)

转载自:http://blog.csdn.net/cywosp/article/details/26469435 在Linux系统中使用C/C++进行多线程编程时,我们遇到最多的就是对同一变量的多线程读写问题,大多情况下遇到这类问题都是通过锁机制来处理,但这对程序的性能带来了很大的影...

2018-02-04 16:58:39

阅读数:428

评论数:0

muduo库的BlockingQueue和BoundBlockingQueue类剖析

转载:http://blog.csdn.net/freeelinux/article/details/53428629 一:无界阻塞队列 muduo库的BlcokingQueue实际上用的生产这消费者模型。我们知道生产者消费者模型一般有两种实现方式,可以利用信号量也...

2018-02-04 15:12:48

阅读数:26

评论数:0

用C++实现单例模式4——C++11实现

1.static local      Scott Meyer在《Effective C++》中提出了一种简洁的singleton写法。 template class Singleton { public: static T& getInstance() { stati...

2018-02-04 11:04:28

阅读数:365

评论数:0

用C++实现单例模式3——如何在不使用锁和C++11的情况下,用C++实现线程安全的Singleton

如题所示,在这里主要讲的是,如何在不使用锁和C++11的情况下,用C++实现线程安全的Singleton。 有四种方式来实现:         1.Atomic Singleton         2.UNIX平台下的pthread_once        ...

2018-02-04 10:56:11

阅读数:29

评论数:0

用C++实现单例模式2——线程安全

上篇文章提及到单例的懒汉模式是线程不安全的,会产生race condition从而产生多次初始化的情况。要想在多线程下工作,最容易想到的就是用锁来保护共享变量了。下面是伪代码: template class Singleton { public: static T& getInsta...

2018-02-04 10:42:06

阅读数:28

评论数:0

用C++实现单例模式1——懒汉模式和饿汉式

单例模式的定义:     保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。     那么我们就必须保证:         1.该类不能被复制。         2.该类不能被公开的创造。     那么对于C++来说,它的构造...

2018-02-04 10:08:29

阅读数:540

评论数:0

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