- 博客(164)
- 收藏
- 关注
原创 Tufts 人脸数据库是最全面的大规模人脸数据集
Tufts 人脸数据库是最全面的大规模人脸数据集,包含 7 种图像模式:可见光、近红外、热、计算机草图、LYTRO、录制的视频和 3D 图像。大小:数据集包含超过 10,000 张图像,其中包括来自 15 个以上国家的 74 名女性和 38 名男性,年龄范围在 4 至 70 岁之间。项目:该数据库可供全球研究人员使用,以便对草图、热、NIR、3D 人脸识别和异性恋人脸识别的面部识别算法进行基准测试。Tufts-Face人脸数据库。
2026-03-16 20:24:35
28
2
原创 五种IO模型
所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回. 但是一旦调用返回,就得到返回值了;看到"同步" 这个词, 一定要先搞清楚大背景是什么. 这个同步, 是同步通信异步通信的同步, 还是同步与互斥的同步.阻塞 IO: 在内核将数据准备好之前, 系统调用会一直等待. 所有的套接字, 默认都是阻塞方式.进程多线程的同步和互斥. 这里的同步通信和进程之 间的同步是完全不相干的概念.阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态.阻塞 IO 是最常见的 IO 模型。
2025-10-16 14:42:31
1067
原创 LRU缓存C++实现
如果键已存在,则更新其值并更新其使用时间。如果键不存在,并且缓存已满,则需要先移除最久未使用的键。如果存在,移动该键关联的节点到双向链表的头部,表示最近使用。get(key): 从缓存中获取键对应的值(如果存在)。缓存中键的最近使用时间应该被更新为当前时间。如果缓存未满,创建新节点,添加到双向链表的头部,并在哈希表中添加键到节点的映射。如果缓存已满,从双向链表尾部移除最久未使用的节点,并从哈希表中删除对应的键。然后,创建新节点,添加到双向链表的头部,并更新哈希表。:创建一个固定大小的哈希表和空的双向链表。
2025-09-02 15:41:09
904
原创 服务器代码知识点补充
每一个用户都相当于一个观察者 ,作为一个观察者 ,将自己加入到在线用户列表中 ,当某件事发生后 ,需要通知所有观察者.将这三个方法注册进服务器 ,但是有临界区问题(线程池与数据接受模块可能同时访问用户管理模块,所以要加锁)将Route注册进UdpServer中后 ,在UdpServer中绑定参数形成任务 ,加到线程池中.在线程池中 ,传递的任务既可以是自定义的类 ,也可以是设置进来的一个一个的函数对象。数据接收模块关心Adduser 和Deleuser 两个模块。文件的标准输出 ,标准输入,标准错误。
2025-06-13 22:03:28
1078
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅