掘友等级
获得徽章 0
文件的系统调用方法:open()打开或新建一个文件,close()关闭文件,read()读取文件内容,write()写入文件内容。
僵死进程:子进程先于父进程结束,保留uid但是进程已结束,没有处在就绪,运行,阻塞这三种状态当中。
处理方法:父进程调用wait;父进程先于子进程结束
fork复制进程,每一个正在运行的可执行程序就是进程,每一个进程都有自己的uid标识每个进程,PCB是进程控制块,存放uid。
fork先为子进程创建一个uid,再把父进程的代码信息拷贝到子进程中。
写时拷贝,子进程与父进程相同页面先不拷贝,如果发生修改再拷贝,提高fork复制效率。
库文件:
静态库文件包含在可执行文件里,多个可执行有多个库文件,资源浪费大,升级困难
共享库文件只做声明,方法包含在/bin目录下,多个可执行程序共享一个库文件,资源占用少,升级方便
C++中的容器类包括“顺序存储结构”和“关联存储结构”,前者包括vector,list,deque等;后者包括set,map,multiset,multimap等。若需要存储的元素数在编译器间就可以确定,可以使用数组来存储,否则,就需要用到容器类了。
并发是指在某个时间段内,多任务交替处理的能力。并行是指同时处理多任务的能力。
localhost 、127.0.0.1、本机IP的区别
1、localhost和127.0.0.1并不需要联网访问,即使在无网络环境下访问这两者都能找到本机;
2、localhost是域名,默认是指向127.0.0.1的;
3、本机IP中的有线网IP和无线网IP都是需要联网后才能正常分配和访问的,它们是本机对外开放的IP地址。
阻塞:
当数据还没准备好时,调用了阻塞的方法,则线程会被挂起,会让出CPU时间片,此时是无法处理过来的请求,需要等待其他线程来进行唤醒,该线程才能进行后续操作或者处理其他请求。
非阻塞:
意味着,当数据还没准备好的时候,即便我调用了阻塞方法,该线程也不会被挂起,后续的请求也能够被处理。
每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心,这样你就能一次又一次的使用该方案,而不必做重复运动。
Trie Tree 也称为字典树或前缀树,是一种用于高效存储和检索、用于从某个集合中查到某个特定 key 的数据结构。Trie Tree 时间复杂度低,和一般的树形数据结构相比,Trie Tree 拥有更快的前缀搜索和查询性能。
和查询时间复杂度为 O(1) 常数的哈希算法相比,Trie Tree 支持前缀搜索,并且可以节省哈希函数的计算开销和避免哈希值碰撞的情况。
下一页