排序
gcc的编译过程详解
预处理(Preprocessing) 输入文件:源代码文件(通常以 .c、.cpp、.c++、.h 等为扩展名)。 处理工具:预处理器(cpp)。 过程:预处理器会执行一系列的预处理操作,包括宏替换、文件包含、条...
gdb怎么调试的?打断点用什么指令?
编译时添加调试信息:在编译程序时,需要使用-g选项,以便将调试信息嵌入可执行文件中。例如: g++ -g -o my_program my_program.cpp 启动 GDB:在终端中执行以下命令: gdb ./my_program 这将...
线程池七大核心参数
线程池七大核心参数如下所示: public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, ThreadFactory ...
常见线程池类型与应用场景
在java.util.concurrent.Executors类中提供了大量创建连接池的静态方法,常见就有四种。 创建使用固定线程数的线程池 public static ExecutorService newFixedThreadPool(int nThreads) { retur...
ArrayBlockingQueue和LinkedBlockingQueue的区别有哪些
inkedBlockingQueue**ArrayBlockingQueue默认无界,支持有界强制有界底层是链表底层是数组是懒惰的,创建节点的时候添加数据提前初始化 Node 数组入队会生成新 NodeNode需要是提前创建好...
JAVA线程池实现原理
1、任务在提交的时候,首先判断核心线程数是否已满,如果没有满则直接添加到工作线程执行 2、如果核心线程数满了,则判断阻塞队列是否已满,如果没有满,当前任务存入阻塞队列 3、如果阻塞队列...
C++ STL组件有哪些
STL 主要包含以下几个组件: 容器(Containers) 容器是用来存储数据的数据结构。STL提供了多种容器,包括向量(vector)、链表(list)、双端队列(deque)、集合(set)、映射(map)、堆栈(...













