- 博客(188)
- 收藏
- 关注
原创 C++输入/输出
2.getline会读取空格,遇到换行符和eof结束,但是不读取换行符。1.getline之前要是有换行符,需用getchar()接受完。一.获取输入的一行整数。二.关于getline。3.可以自定义结束符。
2023-07-03 09:45:23 54
原创 server记录
连接,解析,将监听套接字的事件类型设置为边缘触发,添加 EPOLLOUT 事件(表示当前套接字写缓冲区有空闲空间)问题:get之后没有响应原因:content-length设置不正确消息体里面需要加 \r\n。
2024-01-18 11:23:23 339
原创 Mysql 基本操作
查看 mysql 服务器正在使用的端口号。查看当前连接的数据库所在的端口号。查看 mysql 运行状态。运行 mysql 服务。关闭 mysql 服务。
2024-01-04 11:58:11 420
原创 操作系统 内存管理篇
装入方式:链接方式: 分配方式:分页:页面大小一致引入快表(和 cache 处理思路一致)升级到二级页表 分段:段大小不一致 分页和分段区别: 段页式: 参考:408操作系统第三章1-内存管理(分页,分段,连续存储)及真题讲解_哔哩哔哩_bilibili
2023-12-24 22:38:48 439
原创 面试复习(一)C++语言特性和常见数据结构与算法
virtual虚函数表虚指针vectorliststackqueuemapsetlambda智能指针auto右值引用const。
2023-12-15 22:46:31 431
原创 程序运行时,数据分布在内存的哪些区域?
在程序运行时,可以通过像 malloc/free、new/delete 这样的函数来动态分配内存,这些内存分配的地址位于堆区。在函数调用时,会在栈上分配内存来存储这些数据,函数返回时,这些内存会被释放。这些变量的值在程序运行之前就已经被初始化,所以它们的值会保存在可执行文件中。在程序加载时,BSS段会被初始化为0或者空指针,因此不需要保存在可执行文件中。存储程序的机器指令。这部分内存通常是只读的,因为程序在运行时不应该修改自身的代码。存储全局变量和静态变量(包括全局静态变量和局部静态变量)的内存区域。
2023-12-13 21:45:26 395
原创 常用的线程锁
互斥锁(Mutex Lock)用于保护共享资源,一次只允许一个线程访问共享资源,其他线程需要等待锁释放后才能访问。互斥锁是最常见的锁类型,用于避免多个线程同时访问共享资源而导致的数据竞争和不一致性。读写锁(Read-Write Lock)允许多个线程同时对共享资源进行读操作,但在有写操作时需要互斥访问。读写锁可以提高并发性能,适用于读操作频繁、写操作较少的场景。自旋锁(Spin Lock)当线程尝试获取锁时,如果锁已被其他线程占用,该线程会一直循环(自旋)等待锁释放。
2023-12-12 21:52:57 1077
原创 在Ubuntu18.04运行qt程序不小心修改内部文件出现The following files have no write permissions的解决方案
小小bug
2023-12-06 10:39:34 448
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人