HYH BLOG

  • 首页
  • 学习教程
    • C++
    • golang
    • javascript
    • python
  • 工具分享
  • 其它
HYH BLOG
专注于知识分享
未分类

使用std::future特性进行异步编程

在异步编程模式下,一般会有这样的场景,即一个线程(生产者)准备好一个任务后,需要通知一个或者多个其他线程(消费者)进行处理,这个时候我们想到了mutex,但是互斥锁只是保护临界资源,在这种场景下是不适用的。对,这个时候可以用条件变量,但是条件变量使用起来特别繁琐,需要mutex配合使用,虽然在C++11下对条件变量以及mutex进行了RAII封装,分别是std::condition_variable以及std::unique_lock(不能使用std::lock_guard),但是用起来还是不够简洁。 在C++11…

2026年4月22日 0条评论 3点热度 0人点赞 admin 阅读全文
C++

C++中的friend详细解析

C++中的友元机制允许类的非公有成员被一个类或者函数访问,友元按类型分为三种:普通非类成员函数作为友元,类的成员函数作为友元,类作为友元。友元包括友元的声明以及友元的定义。友元的声明默认为了extern,就是说友元类或者友元函数的作用域已经扩展到了包含该类定义的作用域,所以即便我们在类的内部定义友元函数也是没有关系的。 友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。友元函数的特点是能够访问类中的私有成员的非成员函数。友元函数从语法上看,它与普通函数一样,即在定义上和调用上与普通函数…

2026年4月22日 0条评论 3点热度 0人点赞 admin 阅读全文
C++

僵尸进程产生原因等问题记录

一、僵尸进程背景 1. 僵尸进程产生原因: ​ 僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源 ​ 当一个进程创建了一个子进程时,他们的运行是异步的。即父进程无法预知子进程会在什么时候结束,那么如果父进程很繁忙来不及wait 子进程时,那么当子进程结束时,会丢失子进程的结束时的状态信息,处于这种考虑unix提供了一种机制可以保证只要父进程想知道子进程结束时的信息,它就…

2026年4月22日 0条评论 12点热度 0人点赞 admin 阅读全文
C++

C++ 时间戳转换

若配置文件中存在一个过期时间,需要与当前时间比较配置是否过期需要将配置时间和当前时间进行比较,需要用到C++ 时间戳转换 C中存在ctime类 //用time()取得当前时间 (秒数), 利用localtime() 转换成struct tm 再利用mktime()将struct tm转换成原来的秒数。 #include <time.h> main(){ time_t timep; struct tm *p; time(&timep); printf("time() : %d \n", timep…

2026年4月21日 0条评论 9点热度 0人点赞 admin 阅读全文
未分类

世界,您好!

欢迎使用 WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!

2026年4月20日 1条评论 15点热度 0人点赞 admin 阅读全文

近期文章

  • 使用std::future特性进行异步编程
  • C++中的friend详细解析
  • 僵尸进程产生原因等问题记录
  • C++ 时间戳转换
  • 世界,您好!

近期评论

  1. 一位 WordPress 评论者 发表在 世界,您好!

COPYRIGHT © 2026 HYH BLOG. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang