E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux多线程服务端编程
Winsocket编程一般步骤-
服务端编程
Socket编程是网络编程的重要组成部分,编写简单的服务端程的程序的一般的步骤如下第一步:包含WinSocket的头文件和动态链接库(DLL)#include#include#pragmacomment(lib,"ws2_32")第二步:初始化WSAStartup在MSDN中WSAStarup的原型如下:intWSAStartup(__inWORDwVersionRequested,__outLP
u010667082
·
2020-07-05 15:52
操作系统及网络编程相关
关于intptr_t,64位linux系统中void *与int转换
学习
linux多线程
时看别人的示例代码直接将void*转化为int,在自己的程序中也这样写可是提示error:castfrom'void*'to'int'losesprecision[-fpermissive
szw4090416
·
2020-07-05 14:14
C/C++
Linux
我发觉需要区分单纯的Linux c/c++服务器开发和嵌入式软件工程师
我发觉需要区分单纯的Linuxc/c++服务器开发和嵌入式软件工程师里面要求的要会
Linux多线程
编程等等的,一个毕竟是纯服务器的,一个是嵌入式软件工程师,还是有区别的。
诗筱涵
·
2020-07-05 12:56
找工作
Linux应用层编程
Linux
服务端编程
经验
学习linux
服务端编程
的过程中跟一个拥有多年linux
服务端编程
经验的前辈请教了一番,有的地方理解的或许没有那么透彻,在这里记录一下,后期内功修炼的差不多了再回来看看是否有新的理解。
Barry__
·
2020-07-05 10:34
Linux服务器编程
Linux 多线程
服务端编程
读书笔记(六)
Linux多线程
服务端编程
笔记(六)从这一章开始开始探究muduo网络库部分第六章muduo网络库简介1、muduo网络库的一些介绍muduo是基于Reactor模式的网络库,其核心是个事件循环EventLoop
Baymax_yan
·
2020-07-05 07:29
muduo
网络编程
Linux 多线程
服务端编程
读书笔记 (五)
Linux多线程
服务端编程
笔记(五)第五章高效的多线程日志1、两种日志交易日志诊断日志2、关键进程记录的日志日志通常需要记录:收到的每条内部消息的ID、关键字段、长度、hash值等。
Baymax_yan
·
2020-07-05 07:58
网络编程
muduo
Linux 多线程
服务端编程
读书笔记(三)
Linux多线程
服务端编程
笔记(三)第三章多线程服务器的适用场合与常用编程模型1、进程与线程每个进程都有自己独立的地址空间线程的特点是共享地址空间,从而有效的共享数据。
Baymax_yan
·
2020-07-05 07:58
网络编程
muduo
linux 多线程
服务端编程
读书笔记(一)
linux多线程
服务端编程
读书笔记(一)第一章线程安全的对象生命期管理1、class线程安全的三个条件:多个线程访问表现出正确的行为无论操作系统如何调度,以及线程的执行顺序如何调用端代码不需要额外的同步与协调动作由此
Baymax_yan
·
2020-07-05 07:58
网络编程
muduo
Linux 多线程
服务端编程
读书笔记(七)
Linux多线程
服务端编程
读书笔记(七)第七章muduo编程示例1、UNP中五个简单的示例discard:丢弃所有收到的数据,简单的长连接TCP应用层协议voidDiscardServer::onMessage
Baymax_yan
·
2020-07-05 07:58
网络编程
muduo
Linux 多线程
服务端编程
读书笔记(四)
Linux多线程
服务端编程
笔记(四)第四章C++多线程系统编程精要1、多线程编程最大的思维方式的转变有两点当前线程可能随时会被切换出去,被抢占多线程程序中事件的发生顺序不再是全局统一的先后关系2、多线程程序的正确性不能依赖任何一个线程的执行速度不能通过原地等待
Baymax_yan
·
2020-07-05 07:58
网络编程
muduo
linux读写锁应用
思路:
linux多线程
时,数据空间为公共,一个线程去添加数据,一个线程去修改数据,这个时候需要加入互斥锁,俩个线程如果同时去处理这个数据空间,数据会出错,除了线程锁之外,学习了一个读写锁详细函数说明:https
藏锋于鞘
·
2020-07-05 07:36
linux应用
golang斗地主
golang开发的
服务端编程
简单,执行高效,有效利用多核资源,
dwg_255
·
2020-07-05 06:54
Linux多线程
服务端编程
学习(八):压力测试
本篇文章将测试网络库的吞吐量和并发事件处理效率,源码的地址为:https://github.com/freshman94/NetLib用pingpong协议测试网络库在单机上的吞吐量简单地说,pingpong协议是客户端和服务器都实现echo协议。当TCP连接建立时,客户端向服务端发送一些数据,服务器会echo回这些数据,然后客户端再echo回服务器。这些数据就会像乒乓球一样在客户端和服务端之间来
freshman94
·
2020-07-05 03:00
多线程网络编程
C++
linux编程
借shared_ptr实现copy-on-write (1)
在《
Linux多线程
服务端编程
使用muduoC++网络库》2.8节说“借shared_ptr实现copy-on-write”。那么copy-on-write是怎样的技术?
X-Programer
·
2020-07-05 02:33
C++
Linux多线程
编程讲解之系列八
条件变量详解在上一篇文章结束时,我描述了一个比较特殊的难题:如果线程正在等待某个特定条件发生,它应该如何处理这种情况?它可以重复对互斥对象锁定和解锁,每次都会检查共享数据结构,以查找某个值。但这是在浪费时间和资源,而且这种繁忙查询的效率非常低。解决这个问题的最佳方法是使用pthread_cond_wait()调用来等待特殊条件发生。了解pthread_cond_wait()的作用非常重要--它是P
BAT-Battle
·
2020-07-05 02:30
linux
剑指bat
linux面试
多线程
bat
《
Linux多线程
服务端编程
-使用muduo C++网络库》学习笔记——第一章
本文目录第1章线程安全的对象生命期管理构造不难销毁太难线程安全的Observer的难点智能指针shared_ptr/weak_ptrshared_ptrweak_ptr引申:unique_ptr插曲:系统地避免各种指针错误论shared_ptr的线程安全shared_ptr的技术陷阱对象池enable_shared_from_this弱回调第1章线程安全的对象生命期管理对象在销毁时,出现的竞态条件
Yanyu-CQU
·
2020-07-05 00:11
学习笔记
C++
C++
muduo
多线程
网络
linux多线程
网络编程详解(包含具体例子讲解)
与多进程相同,采用多线程可以实现并发服务器,并且由于线程的系统开销小,切换时间短,对于需要处理大量客户的服务器而言其具有更大的优势,实现多线程并发服务器的基本流程是:当建立连接以后,服务器调用pthread_create()函数产生新的线程,由新的线程来处理客户端的请求,同时主线程等待另一个客户的连接请求,其中的典型的模板如下:#include#include#include#include#in
lxh_hust
·
2020-07-04 21:45
unix网络编程学习
盘点:有哪些适合新手练手的C/C++项目?
此项目为实验楼会员可做实验,大家如若不想充值,同样可以在网络上寻找实例:代码+注释:C语言做的简单的手机通讯录系统3、C/C++-C语言利用epoll实现高并发聊天室项目实现客户端和
服务端编程
,服务端使用
你的社交帐号昵
·
2020-07-04 19:24
Linux多线程
——使用信号量同步线程
信号量、同步这些名词在进程间通信时就已经说过,在这里它们的意思是相同的,只不过是同步的对象不同而已。但是下面介绍的信号量的接口是用于线程的信号量,注意不要跟用于进程间通信的信号量混淆,关于用于进程间通信的信号量的详细介绍可以参阅我的另一篇博文:Linux进程间通信——使用信号量。相似地,线程同步是控制线程执行和访问临界区域的方法。一、什么是信号量线程的信号量与进程间通信中使用的信号量的概念是一样,
iteye_2116
·
2020-07-04 19:30
赖勇浩:推荐《Linux 多线程服务器端编程》
推荐《
Linux多线程
服务器端编程》赖勇浩(http://laiyonghao.com)最近,有一位朋友因为工作需要,需要从网游的客户端编程转向服务器端编程,找我推荐一本书。
iteye_11790
·
2020-07-04 18:37
陈硕的cpp博客
置顶随笔[置顶]新书预告:《LinuxC++多线程
服务端编程
》(暂定名)看完了W.RichardStevens的传世经典《UNIX网络编程》,能照着例子用SocketsAPI编写echo服务,却仍然对稍微复杂一点的网络编程任务感到无从下手
ilvu999
·
2020-07-04 18:43
C++
Linux多线程
编程之条件变量
1条件变量简介在服务器编程中常用的线程池,多个线程会操作同一个任务队列,一旦发现任务队列中有新的任务,子线程将取出任务;这里因为是多线程操作,必然会涉及到用互斥锁保护任务队列的情况(否则其中一个线程操作了任务队列,取出线程到一半时,线程切换又取出相同任务)。但是互斥锁一个明显的缺点是它只有两种状态:锁定和非锁定。设想,每个线程为了获取新的任务不断得进行这样的操作:锁定任务队列,检查任务队列是否有新
idwtwt
·
2020-07-04 18:25
Linux杂项
服务器和网络
linux多线程
编程,替代sleep的几种方式
我只想要进程的某个线程休眠一段时间的,可是用sleep()是将整个进程都休眠的,这个可能就达不到,我们想要的效果了。目前我知道有三种方式:1usleep这个是轻量级的,听说能可一实现线程休眠,我个人目前使用的这种。2select这个可以,我也用过这种方式,它是在轮询。3pthread_cond_timedwait采用pthread_cond_timedwait(pthread_cond_t*con
Robben.Han
·
2020-07-04 18:57
Linux
Linux多线程
服务端编程
:使用muduo C++网络库
常见的并发网络服务程序设计方案W.RichardStevens的《UNIX网络编程(第2版)》第27章“Client-ServerDesignAlternatives”介绍了十来种当时(20世纪90年代末)流行的编写并发网络程序的方案。[UNP]第3版第30章,内容未变,还是这几种。以下简称UNPCSDA方案。[UNP]这本书主要讲解阻塞式网络编程,在非阻塞方面着墨不多,仅有一章。正确使用non-
博文视点
·
2020-07-04 12:13
Web开发
脚本语言
软件工程
linux 多线程并发服务器(TCP)
linux多线程
并发服务器(TCP)所谓多线程并发服务器就是基于线程,每个客户端来了创建一个线程,由线程去处理客户端的请求。
CPP后台服务器开发
·
2020-07-04 08:31
Unix网络编程
linux网络编程
精品译文系列:
Linux多线程
应用性能分析
简介本文由西邮陈莉君教授研一学生梁金荣、戴君毅、马明慧等翻译,陈莉君、宋宝华老师指导和审核。译者梁金荣、戴君毅、马明慧等同学热爱开源,践行开放、自由和分享。原文地址:https://easyperf.net/blog/2019/10/05/Performance-Analysis-Of-MT-apps精品英文Linux系列文章翻译工作,由Linux阅码场公众号策划。如果您发现有好的英文文献值得翻译
宋宝华
·
2020-07-04 04:14
视频教程-MySQL数据库从入门到精通实战教程-MySQL
精通
服务端编程
,有大型分布式交易一致性实战经验。
党志立
·
2020-07-04 03:06
推荐《Linux 多线程服务器端编程》
我推荐了《
Linux多线程
服务器端编程——使用muduoC++网络库》给他,他在网上书店看了以后问我为什么推荐这么厚一本书给他,正好这本书我已经早就看完了,一直也想写篇“书评”,就在这里多扯几句。
weixin_30518397
·
2020-07-04 02:30
Linux下多线程服务器Reactor模式总结(精华好文!!)
PS:述而不作,里面很大部分知识都是总结的陈硕(muduo网络库作者,《
Linux多线程
服务端编程
》作者)论述,感谢陈硕前辈。
小师兄.
·
2020-07-04 02:29
14.
Linux学习
《
Linux多线程
服务端编程
-使用muduo C++网络库》学习笔记——第三章
本文目录第3章多线程服务器的常用场合与常用编程模型单线程服务器的常用编程模型Reactor和Proactor多线程服务器的常用编程模型oneloopperthread线程池作者推荐的模式进程间通信只用TCP多线程服务器的适用场合必须使用单线程的场景单线程程序的优缺点多线程程序有性能优势吗?适用多线程程序的场景例子计算机群线程分类作者关于“多线程服务器的适用场合”的答疑讨论Linux能启动多少线程?
Yanyu-CQU
·
2020-07-04 00:11
学习笔记
C++
《
Linux多线程
服务端编程
-使用muduo C++网络库》学习笔记——第二章
本文目录第2章线程同步精要互斥量(mutex)只用非递归的mutex死锁条件变量不要用读写锁和信号量线程安全的单例模式实现使用shared_ptr实现copy-on-write第2章线程同步精要线程同步四项原则,依照重要性排序:尽量不要共享对象,共享对象优先选择不可修改的对象使用高级并发编程构件使用低级同步原语,只用非递归(不可重入)的互斥量和条件变量,不用读写锁、信号量除原子级整数外,不编写无锁
Yanyu-CQU
·
2020-07-04 00:11
学习笔记
C++
Linux多线程
服务端编程
:使用muduo C++网络库
《
Linux多线程
服务端编程
:使用muduoC++网络库》(多年编写生产环境下多线程服务端程序经验之精华基本信息作者:陈硕出版社:电子工业出版社ISBN:9787121192821上架时间:2013-1
iteye_11916
·
2020-07-04 00:39
计算机图书
初探《
Linux多线程
服务端编程
使用muduo C++网络库》
第1部分c++多线程系统编程第1章线程安全的对象生命期管理1.多个线程同时看到一个对象时,析构可能出现racecondition2.线程安全的类的定义:多个线程同事访问时,其表现出正确的行为;无论操作系统如何调度这些线程,无论这些线程的执行顺序如何交织;调用端代码无须额外的同步或其他协调动作。3.MutexLock封装临界区,用RAII手法封装互斥器的创建和销毁。临界区在linux下是pthrea
mashuiping
·
2020-07-02 11:58
网络编程
Linux多线程
服务端编程
(笔记3_4)
每个进程都有自己的独立地址空间,线程的特点是共享地址空间从而可以高效的共享数据。select和poll用来,支持Unix中I/O复用的功能,在Unix中I/O模型可以分为以一几种:阻塞IO应用进程产生一个systemcall,如果内核没有数据准备好,则会一直wait,处于阻塞,当内核数据准备好之后,将会把数据从内核再拷贝到应用进程,这一copy过程也处于阻塞状态;非阻塞I/O,就意味着当应用进程产
liuxuejiang158
·
2020-07-02 09:00
C/C++
《
Linux多线程
服务端编程
》—线程同步精要
并发编程的两种基本模型:messagepassing和sharedmemory。使用messagepassing可以跨机器,分布式系统的架构更具有一致性,扩容起来也较容易。线程同步的四项原则按重要性排序:首要原则是尽量最低限度地共享对象,减少需要同步的场合。一个对象能不暴露给别的线程就不要暴露;如果要暴露,优先考虑immutable对象;实在不行才暴露可修改的对象,并用同步措施来充分保护它。其次是
jiange_zh
·
2020-07-02 05:27
C/C++
多线程
服务器
《
Linux多线程
服务端编程
》—muduo网络库(1)
TCP网络编程本质论思维转换:把原来“主动调用recv(2)来接收数据,主动调用accept(2)来接受新连接,主动调用send(2)来发送数据”的思路转换为“注册一个收数据的回调,网络库收到数据会调用我,直接把数据提供给我,供我消费。注册一个接受连接的回调,网络库接受了新连接会回调我,直接把新连接对象传给我,供我使用。需要发送数据的时候,只管往连接中写,网络库会负责无阻塞地发送。”作者(陈硕)认
jiange_zh
·
2020-07-02 05:27
UNIX网络编程
服务器
C/C++
《
Linux多线程
服务端编程
》—线程安全的对象生命期管理
当一个对象能被多个线程同时看到时,对象的销毁时机变得模糊不清,可能出现多种竞态条件(racecondition):1.在即将析构一个对象时,从何而知此刻是否有别的线程正在执行该对象的成员函数?2.如何保证在执行成员函数期间,对象不会在另一个线程被析构?3.在调用某个对象的成员函数之前,如何得知这个对象还活着?它的析构函数会不会碰巧执行到一半?线程安全的定义依据[JCP],一个线程安全的class应
jiange_zh
·
2020-07-02 05:27
C/C++
多线程
Linux多线程
编程(6.4)
线程:轻量级的进程,是调度的最小单位,线程是共享同一进程地址空间多个可独立被调度运行的任务一多线程与多进程的区别1.在一个进程中创建的多个线程,共享同一个进程的资源,各线程独立被内核调度2.多个进程是独立地址空间相同点:1.都参与统一的调度2.都有自己的ID,一组寄存器的值不同点:线程间共享统一个进程的地址空间,进程间是独立地址空间二线程间共享资源和私有资源共享资源:全局变量,打开文件获得文件描述
椰子哥·天行者
·
2020-07-02 01:56
Linux进程开发
《
Linux多线程
服务端编程
》学习笔记---第一章
多线程下管理对象会遇到的问题:(1)对象析构时可能别的线程在执行该对象的成员函数(2)成员函数执行时该对象正在被别的线程析构(3)在调用某对象时如何得知该对象还未被析构对这些问题进一步看就是要保证多线程环境下对象创建与析构的安全性。对于创建,关键是不要在创建过程中泄露this指针,如果泄露了调用者会在对象还未构造完成之前就开始使用这一对象,如果对象是基类对象,其派生类还未构造,则问题更为严重,所以
不舍驽马
·
2020-07-02 00:12
C/C++
Linux多线程
服务器编程(陈硕)学习总结
这本书确实是学习多核时代采用现代C++编写多线程程序的好书,下面是学习总结:第一章线程安全的对象生命期管理对象的创建很简单,但是不要在构造期间泄漏this指针,比如不要在构造函数中注册任何回调函数,二段式构造有时候是好方法。对象的销毁及析构在多线程中太难,一个万能的解决方案是引入另外一层间接性,比如C++11中的一对神兵利器shared_ptr/week_ptr;shared_ptr能实现线程安全
carlshen8
·
2020-07-01 19:56
C++11
Linux多线程
服务端编程
读书笔记 chapter 1 线程安全的对象生命期管理
1.安全地创建对象为了保证对象安全地被构造,即不被其他线程访问一个构造了一半的对象,关键是在构造过程中不泄露this指针,即不要在构造函数中注册任何回调不要在构造函数中将this指针传给跨线程的对象即使在构造函数最后一行也不要,因为有可能是基类,先于派生类先构造。简单来说就是注册回调函数如果需要传入this指针的话,那么实现这个功能就应该另外写一个函数initialize()来实现,而不是在构造函
GrimCake
·
2020-07-01 09:18
Linux多线程
编程-线程安全的对象生命期管理(2)
废话不多说,接着上篇文档继续。3.对象析构针对对象析构的话,分两种情况。在单线程模式下,对象析构显然不会造成问题,最多需要注意一下对象指针是否为空的情况。但是,在多线程模式下,对象析构则会是我们需要重点关注的地方,因为存在太多的竞态条件。对于一般的成员函数,我们只要做到不并发执行(读写不要同时),保证每个成员函数的临界区不重叠,这样就能做到线程安全。但是,保护成员函数临界区的互斥量必须要有效,但是
zhongcanw
·
2020-07-01 07:24
muduo网络库源码剖析
tcp网络编程客户端和服务端及listen和tcp允许最大连接数
服务端编程
步骤:1.创建套接字2.为套接字绑定地址信息3.监听:开始接受服务端的连接请求4.获取连接建立成功的新socket5.发送数据6.接受数据1.
sophia__yu
·
2020-07-01 04:05
Linux
什么是PIMPL?
转载自:https://www.cnblogs.com/joinclear/p/3908661.html作者:joinclear感谢问题源自陈硕《
Linux多线程
服务端编程
》第十一章11.4节可参考《C
huygft
·
2020-07-01 03:34
C++
Linux多线程
编程实例解析
Linux系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。clone()是Linux所特有的系统调用,它的使用方式类似fork,关于clone()的详细情况,有兴趣的读者可以去查看有关文档说明。下面我们
zqixiao_09
·
2020-06-30 19:33
Linux
多线程编程
Linux系统应用编程
pthread
本篇转至:http://www.cnblogs.com/zhangxuan/p/6430034.html另一篇
Linux多线程
编程小结写的很好,值得参考。
雨田嘟嘟
·
2020-06-30 04:55
linux
Linux多线程
学习(四)pthread_self
原型:#includepthread_tpthread_self(void);说明:获取本进程自身的ID。进程ID类型是pthread_t,这个类型一般为longlong型,8个字节。测试代码:#include#include#includevoid*thread_one(){printf("thread_onepidis%lld\n",getpid());printf("thread_oneti
xiaoyeyopulei
·
2020-06-30 01:02
linux多线程
linux多线程
(1)
Linux多线程
编程先来谈一谈进程:进程是cpu分配内存资源的最小单位。线程是轻量级的进程,没有进程就没有线程,一个进程包括多个线程。
Jāson
·
2020-06-29 13:23
Linux多线程
编程-线程间参数传递
要求实现在两个子线程通过全局变量传递数据:即在一个子线程中对全局变量的成员进行赋值,在另一个子线程中对全局变量的成员进行取值并显示。体会同一进程的不同线程共享进程所拥有的全部资源的特性。思路首先,定义一个全局结构类型和对应的变量,定义两个Pthread_t类型变量来保存两个子线程的id。再定义一个主函数和两个用于创建子线程的对应函数。在主函数中创建两个函数对应的子线程并对创建是否成功进行判断,创建
leon_wdbt
·
2020-06-29 09:10
Linux
谈反应式编程在服务端中的应用,数据库操作优化,提速 Upsert
本篇将介绍如何在
服务端编程
中应用响应时编程来改进数据库操作的性能。
Newbe36524
·
2020-06-29 08:00
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他