- 博客(7)
- 收藏
- 关注
原创 socket--发送RST
通过设置SO_LINGER套接字选项导致连接被关闭时在TCP套接字上发送一个RST。/*client*/int main(int argc, char **argv){ int sockfd; struct linger ling; struct sockaddr_in servaddr; if (argc != 2){ printf("usage : tcpcli <IPAddress>"); ...
2021-06-10 20:07:11 785 1
原创 libevent
1、libevent的使用(libevent例子)static voidsignal_cb(evutil_socket_t sig, short events, void *user_data){ struct event_base *base = user_data; struct timeval delay = { 2, 0 }; printf("Caught an interrupt signal; exiting cleanly in two seconds.\n"); eve
2021-06-05 19:36:25 123
原创 vscode ssh centos虚拟机
1、背景因为工作学习的需要,在win10的机器上利用virtualBox安装了centos虚拟机(之前主要是为了安装cadence)。win10的机器上安装了VS code,之前(前公司)使用过putty/xshell登录linux主机。现在想通过利用win10上的VScode来访问centos虚拟机、并编写c++程序。为了实现这一功能、折腾了一段时间、特此记录下设置的过程。2、需要解决的问题1、首先需要保证宿主机(win10) 能够与虚拟机进行通信。2、VS code如何登录到虚拟机。.
2021-03-18 15:26:28 503
原创 斐波拉契的第100项
看到一个关于斐波拉契数列的问题、包括以下问题:计算斐波拉契数列的第50项、100项。 斐波拉契数列中的第多少项开始大于100亿。 之前在学习递归的时候也接触过用递归和迭代计算斐波拉契数列的相关知识,看到这个问题的第一反应是int和long的数值范围是否满足要求,于是用简单的循环计算第50项的值、输出为负数即超出了int的表示范围。于是想到用数组保存斐波拉契数的每一位。代码如下:#include <iostream>int main() { int calline =.
2021-03-04 12:38:12 2615 1
翻译 vs2019使用boost(笔记)
项目需要使用到boost库,找到的可供使用的方法:如下:代码段中使用到了boost库#include <boost/lambda/lambda.hpp>#include <iostream>#include <iterator>#include <algorithm>int main(){ using namespace boost::lambda; typedef std::istream_iterator<int
2021-01-13 15:49:11 346
原创 单例模式+多线程日志类
单例模式+多线程日志类程序思路主要问题和解决思路:疑问完整代码运行结果程序思路想自己写一个日志类来记录一些日志信息、该日志类需要支持多线程。为了避免出现多个线程写日志文件的情况*(多个线程写文件、需要频繁加锁、解锁、写文件)*决定使用“队列”来解决多个线程写文件的问题,即多个线程往日志信息队列中放信息、一个real写文件线程负责从队列头取日志并写入文件。主要问题和解决思路:1、提供给使用者的接口、即使用者调用哪个函数来实现日志的记录。2、负责写日志信息的函数(线程Dolog)。该线程应该是在创建
2020-09-11 11:09:44 569 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人