• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
qwer321
博客园 首页 新随笔 联系 订阅 订阅 管理

09 2024 档案

 
C++多线程与并发类面试题
摘要:题目来源: https://subingwen.cn/cpp/thread/ https://mp.weixin.qq.com/s?__biz=Mzg4NDQ0OTI4Ng==&mid=2247489580&idx=1&sn=b9ac83040601230ff897f3394e956cea&chks 阅读全文
posted @ 2024-09-28 21:36 黎明破晓' 阅读(338) 评论(0) 推荐(0)
Qt面试题
摘要:Qt三大核心机制 ??? 什么是Qt的元对象系统? Qt的元对象系统是Qt框架中一个核心的组成部分, 提供了一种机制来拓展C++的功能, Qt的元对象系统(Meta-ObiectSystem) 提供了对象之间通信的信号与槽机制、运行时类型信息和动态属性系统。 元对象系统由以下三个基础组成。 1. Q 阅读全文
posted @ 2024-09-27 23:18 黎明破晓' 阅读(58) 评论(0) 推荐(0)
C++线程同步之条件变量
摘要:条件变量需要和互斥量配合起来使用,C++11提供了两种条件变量: condition_variable:需要配合std::unique_lockstd::mutex进行wait操作,也就是阻塞线程的操作。 condition_variable_any:可以和任意带有lock()、unlock()语义 阅读全文
posted @ 2024-09-27 20:22 黎明破晓' 阅读(21) 评论(0) 推荐(0)
C++线程同步之互斥锁
摘要:文章链接:https://subingwen.cn/cpp/mutex/ 文章视频在本地 线程同步 线程同步不是说让多个线程同时去做事情 而是让多个线程有序的访问或操作 共享资源 在C++11中一共提供了四种互斥锁: std::mutex:独占的互斥锁,不能递归使用 std::timed_mutex 阅读全文
posted @ 2024-09-25 00:19 黎明破晓' 阅读(14) 评论(0) 推荐(0)
call_once()
摘要:call_once std::call_once()来保证函数在多线程环境下只能被调用一次。使用call_once()的时候,需要一个once_flag作为call_once()的传入参数,该函数的原型如下: // 定义于头文件 template< class Callable, class... 阅读全文
posted @ 2024-09-24 21:47 黎明破晓' 阅读(26) 评论(0) 推荐(0)
thread的任务函数
摘要:thread 任务函数f的可选类型有很多,具体如下: 普通函数,类成员函数,匿名函数,仿函数(这些都是可调用对象类型) 可以是可调用对象包装器类型,也可以是使用绑定器绑定之后得到的类型(仿函数) 阅读全文
posted @ 2024-09-24 21:05 黎明破晓' 阅读(8) 评论(0) 推荐(0)
进度
摘要:9-24凌晨1.30看 76- 80 9-25凌晨0.20看 81-84 9-27 看了 85,由于看了博客,所以是没怎么看 看了86 关于互斥锁和互斥量的博客看了,87-95视频没有再看 直接从96开始看 阅读全文
posted @ 2024-09-24 01:41 黎明破晓' 阅读(10) 评论(0) 推荐(0)
C++多线程面试题
摘要:并发和并行 资源相对匮乏时,会进行并发,即多个线程分时复用CPU时间片。 资源足够充足时,一般是并行,每个线程独自占有一个CPU核心, 这些线程就不用分时复用CPU时间片,此时程序的并发效率是最高的。 阅读全文
posted @ 2024-09-24 01:33 黎明破晓' 阅读(15) 评论(0) 推荐(0)
thread常用函数
摘要:# get_id(): 这个获取线程ID的函数叫做get_id() join(): 再次强调,我们一定要搞清楚这个函数阻塞的是哪一个线程,函数在哪个线程中被执行,那么函数就阻塞哪个线程。 detach() detach()函数的作用是进行线程分离,分离主线程和创建出的子线程。在线程分离之后,主线程退 阅读全文
posted @ 2024-09-24 01:22 黎明破晓' 阅读(24) 评论(0) 推荐(0)
概述
摘要:在C++11前,C++并没有线程类,所以之前需要借助C语言的线程或者boost库中的线程类 C++11时,C++才有自己的线程类,但是总的来说,都是差不多的 emmm感觉看完大丙的,还是要看看恋恋风辰的 目前的感觉是大丙贴近概念,恋恋风尘有概念也有实际运用 阅读全文
posted @ 2024-09-23 23:15 黎明破晓' 阅读(8) 评论(0) 推荐(0)
对项目的理解
摘要:就以我目前所了解到的,项目中应该基本没有用到C++11的多线程 而是用boost库中asio的多线程模型来提高并发性 阅读全文
posted @ 2024-09-23 22:54 黎明破晓' 阅读(26) 评论(0) 推荐(0)
9-23
摘要:p5-6 beast实现http服务器以及get和post的请求 p6看到31min,后面直接看的文档,也没有错误 p6中讲对于get请求的解析以及利用jsoncpp将post相关数据进行序列化和反序列化 get请求的解析只是进行了解,up说也没有必要自己敲,因为通常实现http服务器都是用其他语言 阅读全文
posted @ 2024-09-23 22:48 黎明破晓' 阅读(9) 评论(0) 推荐(0)
9-22
摘要:p4为Boost和jsoncpp的配置 在网络学习时已经下载好了,直接配置就行 up说通常创建http服务器的时候,很少使用c++,因为c++实现http服务器不如其他语言方便,但是这个是介绍c++全栈的,因此,http服务器也是用c++来写的。 也就是说服务器的http使用c++编写 客户端的ht 阅读全文
posted @ 2024-09-22 12:02 黎明破晓' 阅读(9) 评论(0) 推荐(0)
9-21
摘要:p1实现登录和注册界面 但是qss的我没看 p2主要也是Qss的切换 只是看到15min p3 点击查看代码 使用 static 和 std::once_flag 的目的不同,通常情况下它们可以结合使用,但并不总是需要一起使用。以下是对这两者之间关系的详细说明,以帮助您决定在特定情况下是否需要同时使 阅读全文
posted @ 2024-09-21 15:43 黎明破晓' 阅读(9) 评论(0) 推荐(0)
9-20 beast实现http服务器
摘要:点击查看代码 void process_request() { response_.version(request_.version()); response_.keep_alive(false); switch (request_.method()) { case http::verb::get: 阅读全文
posted @ 2024-09-20 16:32 黎明破晓' 阅读(35) 评论(0) 推荐(0)
9-19
摘要:利用beast实现http服务器 (up讲的有手写http服务器,但是我没看,直接看的利用beast实现http服务器) 配置jsoncpp 文件一直链接不上,用了好长时间,所以利用beast实现http服务器也没有看 用了好几个小时才搞好: 下载的文件打开后的运行库 和 我自己的vs的运行库不一致 阅读全文
posted @ 2024-09-19 20:27 黎明破晓' 阅读(15) 评论(0) 推荐(0)
9-17
摘要:粘包原因 1 客户端的发送频率远高于服务器的接收频率,就会导致数据在服务器的tcp接收缓冲区滞留形成粘连,比如客户端1s内连续发送了两个hello world!,服务器过了2s才接收数据,那一次性读出两个hello world!。 2 tcp底层的安全和效率机制不允许字节数特别少的小包发送频率过高, 阅读全文
posted @ 2024-09-17 23:02 黎明破晓' 阅读(14) 评论(0) 推荐(0)
9-15
摘要:c++中没有闭包,所以需要自己实现一个 利用c++11中的智能指针 把一个智能指针传给一个对象,如果对象不被释放掉,那么智能指针也不会释放掉。 比如: 把一个智能指针传递给一个回调函数,假设回调函数会放到一个回调函数队列中,那么回调函数就会是一个函数对象,而这个回调函数没有被释放之前,智能指针也不会 阅读全文
posted @ 2024-09-15 23:21 黎明破晓' 阅读(10) 评论(0) 推荐(0)
9-14
摘要:读写操作的代码片段(p3) 同步服务器客户端demo(p4) 阅读全文
posted @ 2024-09-14 22:43 黎明破晓' 阅读(6) 评论(0) 推荐(0)
C++网络编程的学习(9-13)
摘要:文章来源: 恋恋风辰的编程笔记 https://gitbookcpp.llfc.club/sections/cpp/boost/asio03.html boost环境配置 网络编程基本流程 网络编程的基本流程对于服务端是这样的 服务端 1)socket 创建socket对象。 2)bind 绑定本机 阅读全文
posted @ 2024-09-13 21:09 黎明破晓' 阅读(33) 评论(0) 推荐(0)
C++并发编程的学习(9-13)
摘要:文章来源: 恋恋风辰的编程笔记 https://gitbookcpp.llfc.club/sections/cpp/concurrent/concpp02.html 容器存储: thread类没有拷贝构造函数,所以使用容器存储它时,不能使用push_back(),需要使用 点击查看代码 void u 阅读全文
posted @ 2024-09-13 14:51 黎明破晓' 阅读(15) 评论(0) 推荐(0)
 

公告


博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3