摘要: // ConsoleApplication6.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #include<thread> #include<iostream> #include<list> #include<mutex> using namespace std 阅读全文
posted @ 2020-08-18 01:02 sunshine_gzw 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 首先来看单例模式的实现: 所谓单例,就是对象的创建只能一次,也就是不能通过构造函数直接创建对象,要通过其他手段,下面请看代码: // ConsoleApplication6.cpp : 定义控制台应用程序的入口点。 #include "stdafx.h" #include<thread> #incl 阅读全文
posted @ 2020-08-18 00:01 sunshine_gzw 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 举个例子,如果有一份资源,假如为list<int>资源,假设有两个线程要对该资源进行压入弹出操作,如果不进行锁的话,那么如果两个线程同时操作,那么必然乱套,得到的结果肯定不是我们想要的结果。于是引入了锁的机制,当一个线程进行相应操作之前加一把锁,访问结束后再释放锁,那么问题便可得到解决,但是会存在一 阅读全文
posted @ 2020-08-17 00:13 sunshine_gzw 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 首先拿个一个硬盘,不能直接使用,要进行分区,比如下面的一块内存: 如果要进行分区,那么怎么分区,所以要有一个内存,用来保存怎么分区的信息,该块内存的名字叫启动块(BootBlock),他的大小是固定的,为1KB. 如下图示例: 分区结束后,还不能够直接使用,还要进行格式化,再格式化之前,要对读写的最 阅读全文
posted @ 2020-08-12 20:48 sunshine_gzw 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 1、listen()队列剖析 作用:监听端口,TCP连接中的服务器端角色 调用格式:int listen(int sockfd, int backlog); 第一个参数:创建的sockfd, 好好理解第二个参数:未决连接,监听套接字队列。最开始是:已完成和未完成之和最大值。现在是:制定给定套接字上内 阅读全文
posted @ 2020-08-08 11:53 sunshine_gzw 阅读(829) 评论(0) 推荐(0) 编辑
摘要: https://zhuanlan.zhihu.com/p/22834126 阅读全文
posted @ 2020-08-07 22:16 sunshine_gzw 阅读(91) 评论(0) 推荐(0) 编辑
摘要: fcntl是计算机中的一种函数,通过fcntl可以改变已打开的文件性质。fcntl针对描述符提供控制。参数fd是被参数cmd操作的描述符。针对cmd的值,fcntl能够接受第三个参数int arg。 fcntl的返回值与命令有关。如果出错,所有命令都返回-1,如果成功则返回某个其他值。 定义函数 i 阅读全文
posted @ 2020-08-07 09:06 sunshine_gzw 阅读(982) 评论(0) 推荐(0) 编辑
摘要: 转:https://www.cnblogs.com/MrListening/p/5821296.html 权限掩码umask 我们都知道在linux下创建一个文件或者目录之后是可以通过chmod等命令进行权限设置,来达到给当前用户、用户组用户以及其他用户分配不同的访问权限。那么,我们新创建的目录和文 阅读全文
posted @ 2020-08-06 19:34 sunshine_gzw 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 由于服务端和和客户端有的代码是共用的,为了提高编译速度,所以用一个文件socketdll保存共享文件,生成动态链接库,以便调用。 socketdll文件含有: XTcp.h: #ifndef __XTCP__H__ #define __XTCP__H__ #ifdef WIN32 #ifdef SO 阅读全文
posted @ 2020-08-01 15:10 sunshine_gzw 阅读(302) 评论(0) 推荐(0) 编辑
摘要: https://zhuanlan.zhihu.com/p/47390641 阅读全文
posted @ 2020-07-31 17:32 sunshine_gzw 阅读(95) 评论(0) 推荐(0) 编辑