
linux之旅
文章平均质量分 85
超华东算法王
微信号:yoggyzh
重磅推出:更新ing:Java难点解读,百战大厂面试; 即将更新系列:自传统编程:rust语言之旅,go语言之旅,c#语言之旅,swift语言之旅,oc语言之旅,Lua语言之旅 黑皮书之旅1:算法导论,neo4j之旅,redis之旅;python高级:opencv3.0,chatgpt,LLM,python-WEB,数据开发,web安全,SQL高级,大数据基础,linux高级,hadoop技术栈,hive
展开
-
C++系统编程-虚假唤醒
虚假唤醒是多线程编程中的一个常见问题,指的是线程在没有满足条件的情况下被唤醒。为了避免虚假唤醒带来的问题,在使用条件变量时需要确保在每次唤醒时都重新检查条件。正确的方法是使用while循环,而不是if,这样即使发生虚假唤醒,线程也会继续等待直到条件满足。原创 2025-02-11 11:25:29 · 483 阅读 · 0 评论 -
Linux-DeepSeek面经
●进程是操作系统资源分配的基本单位,包含程序执行所需的资源,如内存,CPU事件,文件句柄等●每个进程都有独立的地址空间,进程之间的内存是相互隔离的,保证了进程间的独立性和安全性●进程由操作系统调度和管理,可以执行多个任务,每个进程有自己的生命周期,从创建到结束●并发不是并行,实际上不是同时运行●并发是指系统能够在同一个时间段内处理多个任务的能力,●并发是任务交替进行,给用户的感觉是同时执行,但实际上是通过时间片轮转或者快速切换任务实现的●多个任务是通过切换上下文来实现并发的。原创 2025-02-11 11:23:35 · 910 阅读 · 0 评论 -
懒加载技术(python实现
懒加载不仅在Web开发中有广泛应用,也在大型应用程序、数据库查询、甚至一些高性能计算任务中发挥着重要作用。它的最大优势是能有效提高性能,减少不必要的资源消耗。然而,懒加载也不是没有代价,它可能增加代码的复杂性,并且可能导致第一次使用时的延迟。所以,使用懒加载时要根据实际需求来权衡其利弊。原创 2025-02-11 10:54:09 · 463 阅读 · 0 评论 -
Linux腾讯面经
文件描述符是一个非负整数,用于标识一个打开的文件,设备,管道或其他输入输出资源,在操作系统中,文件描述符是进程和内核进行文件操作的接口,通常通过系统调用(open,read,write,close)来进行文件的读写操作。●硬链接占用空间少,只是给现有文件新增一个目录项,软链接包含文件路径引用,所以需要自己的inode,数据块,并且存储目标路径的字符信息。●flags是打开文件的操作模式,有只读,只写,读写,创建,追加,清空,非阻塞等。●静态库较大,包含库的代码,动态库较小,代码不包含在可执行文件。原创 2025-02-11 10:05:29 · 1034 阅读 · 0 评论 -
linux通信-消息队列,内存映射,管道
消息队列:消息队列提供了进程间异步通信的机制,可以让不同的进程通过消息传递进行数据交换。它适合于需要解耦、异步通信的场景,尤其是在分布式系统中。内存映射:内存映射允许进程直接访问磁盘文件或共享内存区域,适合需要高效文件操作或进程间共享内存的场景。它提供了低延迟、高效的数据读写方式。管道:管道是进程间数据流的常见形式,适合父子进程或同类进程之间的简单、单向通信。它常用于Unix/Linux系统中,尤其是在命令行中作为工具间的数据传递通道。原创 2025-01-19 08:44:13 · 480 阅读 · 0 评论 -
linux-GCC中的动态库和静态库
是一种非常常见的编译器,支持生成动态库和静态库。这可以通过在编译时链接静态库,并在运行时依赖动态库来实现。如果程序不需要频繁更新,并且希望减少运行时的依赖,静态库是一个合适的选择;动态库的好处是,它们可以在多个程序之间共享,这样可以减少内存占用,并且允许独立更新库的实现而不需要重新编译依赖于该库的程序。在静态库的情况下,所有需要的代码在编译时就已经包含进最终的可执行文件中,程序在运行时不需要再依赖外部的库文件。动态库是在程序运行时被加载到内存中的库文件。静态库是在编译时被链接到程序中的库文件。原创 2024-12-11 18:51:18 · 780 阅读 · 0 评论