2024年10月17日

git使用:将代码推送到github上

摘要: 如果推送网络有问题,配置代理(让git使用你的vpn)export http_proxy=http://192.168.124.23:7890export https_proxy=http://192.168.124.23:7890 一: 在github*上创建代码库 在code里获取自己的仓库UR 阅读全文

posted @ 2024-10-17 17:43 不败剑坤 阅读(1) 评论(0) 推荐(0) 编辑

2024年10月14日

qt 信号和槽

摘要: 第五个参数 一般使用默认,不需特别指明 第五个参数 Qt::ConnectionType Qt::ConnectionType 是一个枚举类型,用于指定连接的类型。以下是 Qt::ConnectionType 枚举的各个值及其含义: Qt::AutoConnection(默认值): 如果发送者和接收 阅读全文

posted @ 2024-10-14 12:10 不败剑坤 阅读(5) 评论(0) 推荐(0) 编辑

2024年10月5日

atomic原子,自旋锁与atomic_flag

摘要: 1)原子类型 原子操作默认采用的是memory_order_seq_cst内存顺序 原子类型可以是无锁的,也可以有锁 (c++17)通过静态函数std::atomic::is_always_lock_free 判断 (c++11)通过成员函数 is_lock_free()判断 2)有锁or无锁 性能 阅读全文

posted @ 2024-10-05 11:29 不败剑坤 阅读(6) 评论(0) 推荐(0) 编辑

2024年10月1日

快速排序算法及多线程试验

摘要: 1)快速排序算法 算法实现: 选定一个起点/终点位置上的数A 小于数A的放在A左侧,大于的放在右侧 对A左侧和右侧数组递归的执行步骤2 // 分区函数 template<typename T> int partition(T arr[], int length) { if (length <= 1) 阅读全文

posted @ 2024-10-01 16:35 不败剑坤 阅读(3) 评论(0) 推荐(0) 编辑

2024年9月30日

基本类型大小,类大小及内存对齐

摘要: 讨论类大小时,我们设置系统为64位系统 1)空类 1字节 空类中只包含一个内存地址,保存类对象的唯一地址 空类 对于一个空类,即使没有任何成员变量,编译器也会为其分配1字节的内存,以确保不同对象的地址唯一性 2)包含虚函数的类 a) 只包含一个/多个虚函数的类 8字节 每个类的实例只会包含一个指向虚 阅读全文

posted @ 2024-09-30 10:03 不败剑坤 阅读(0) 评论(0) 推荐(0) 编辑

2024年9月29日

忙等,yield(),死循环,原子atomic

摘要: 1)忙等 忙等是一种编程技术,其中一个线程不断地检查某个条件是否满足,而不使用阻塞式等待(如条件变量)。 这种方式可能导致 CPU 占用率非常高,因为线程一直在运行,即使没有实际的工作要做 for (;😉 { if (val > 10) { //dosomething } else { std:: 阅读全文

posted @ 2024-09-29 15:34 不败剑坤 阅读(3) 评论(0) 推荐(0) 编辑

2024年9月25日

线程池

摘要: 1)线程池 PoolThread 线程池可以避免在处理短时间任务时创建与销毁线程的代价,它维护着多个线程,等待着监督管理者分配可并发执行的任务,从而提高了整体性能 2)单例类 static ThreadPool& instance() { //局部静态变量,单例类只构造一次 static Threa 阅读全文

posted @ 2024-09-25 11:40 不败剑坤 阅读(3) 评论(0) 推荐(0) 编辑

boost.asio 异步网络编程

摘要: Proactor 模式 Proactor 模式是一种异步 I/O 处理模式,常用于高性能网络服务器和并发系统中。与传统的 Reactor 模式(基于事件驱动的 I/O 多路复用)不同,Proactor 模式使用异步 I/O 操作来处理 I/O 任务,从而提高了系统的并发能力和响应速度。 1)异步 优 阅读全文

posted @ 2024-09-25 11:08 不败剑坤 阅读(17) 评论(0) 推荐(0) 编辑

2024年9月23日

多线程问题:异常处理,单例,双重检查锁定

摘要: 1)多线程异常处理 多线程中如何捕获抛出异常到主线程 a)catch中使用std::current_exception();获得正在处理的异常 b)通过引用类型std::exception_ptr& _ex_ptr 传出 c)std::rethrow_exception(ex_ptr);重新抛出异常 阅读全文

posted @ 2024-09-23 17:25 不败剑坤 阅读(6) 评论(0) 推荐(0) 编辑

线程同步:锁,条件变量,并发

摘要: 1)锁mutex 2)条件变量 头文件<condiction_variable> condition_variable cv; cv.wait(_lock,谓语)//使用谓语检查是否满足唤醒条件,防止假唤醒 using namespace std; mutex _mutex; condition_v 阅读全文

posted @ 2024-09-23 17:23 不败剑坤 阅读(2) 评论(0) 推荐(0) 编辑

导航