手机随时阅读
新人专享大礼包¥24
以kakfa3.0.0为例,从生产者,消费者,服务端入门kafka源码
文章目录第 1 章 Kafka 概述1.1 定义1.2 消息队列1.2.1 传统消息队列的应用场景1.2.2 消息队列的两种模式1.3 Kafka 基础架构第 2 章 Kafka 快速入门2.1 安装部署2.1.1 集群规划2.1.2 zookeeper集群部署2.1.3 kafka集群部署2.1.4 集群启停脚本2.2 Kafka 命令行操作
文章目录1 同步IO与异步IO2 POSIX异步IO(aiocb)3 异步操作状态3.1 aio_error3.2 aio_return4 等待异步I
Linux系统编程(一)进程基础Linux系统编程(二)信号Linux系统编程【三】进程间通信4 进程间关系5 线程基础6 线程互斥与同步七 线程控制八 高级 IO-记录锁九 高级IO-多路复用十 高级IO-异步IO
文章目录1 统计两个数二进制位多少位不同2 数组中唯一一个不重
文章目录1 记录锁1.1 概念1.2 加锁解锁2 记录锁测试命令3 记录锁(底层实
文章目录1 问题提出2 fd_set容器2.1 fd_set的实现2.2 操作fd_se
文章目录1 ARP协议的数据包2 Wireshark眼中的IP协议3 TCP与
文章目录1 多线程互斥与同步2 互斥量2.1 基本概念2.2 互斥量数据类型2.3 互斥量的加锁解锁3 读写锁rwlock3.1 读写锁三种状态:3.2 读写锁的数据类型3.3 读写锁的加锁解锁4 自己实现互斥锁4.1 mylock 实现4.2 myunlock解锁实现5 自旋锁6 线程同步1 条件变量的数据类型和相关函数2 深入条件变量7 屏障 barrier1 多线程互斥与同步多线程互斥,同一时间只有一个线程访问数据。互斥锁 mutex读写锁 rwlock自旋锁 spinlock多线程同
文章目录1 线程概念1.1 进程到线程1.2 线程资源1.3 进程线程区别2 线程创建与终止2.1 线程创建2.2 线程终止3 线程清理函数1 线程概念1.1 进程到线程多进程之间互相沟通比较麻烦,比如内存共享、描述符共享、互斥与同步。同一个进程中的多线程使用的资源是共享的,比如内存,文件描述符等等。1.2 线程资源线程共享资源:可执行程序的代码,程序的全局内存,堆内存,栈,文件描述符。线程独有资源:线程 ID,线程自己的一套寄存器值,线程运行栈,调度优先级和策略,信号屏蔽字,errno 变
文章目录1 线程属性1.1 pthread_attr_t1.2 不同属性的作用2 互斥量的共享属性2.1 属性的初始化与回收2.2 共享属性3 互斥量的鲁棒属性3.1 相关函数3.2 互斥量状态一致性4 递归型互斥量4.1 相关函数4.2 递归类型的互斥量5 其它同步对象的属性5.1 读写锁的属性5.2 条件变量的属性5.3 barrier 属性6 可重入函数(二)7 errno 变量与多线程8 只被执行一次的函数8.1 问题提出8.2 pthread once9 线程私有变量9.1 键类型及相关函数9.2
文章目录1 进程间通信总览1.1 进程间如何通信1.2 Linux IPC 分类1.3 Linux IPC常用手段2 无名管道2.1 pipe 函数2.2 用pipe进行进程间通信3 有名管道3.1 创建 FIFO 类型文件3.2 FIFO文件特性4 System V共享内存4.1 共享内存4.2 IPC 内核对象4.3 获取内核对象的id号4.4 创建IPC内核对象4.5 shmget函数4.6 键值与ftok4.7 shmget函数4.8 shmctl5 System V消息队列5.1 消息队列相关的函
文章目录1 进程扇与进程链2 进程组2.1 概念2.1 进程组的创建与设置3 会话3.1 概念3.2 创建会话4 控制终端、前台进程组与后台进程组5 后台进程组与控制终端6 孤儿进程与孤儿进程组7 守护进程7.1 守护进程的概念7.2 创建守护进程(调用系统函数)7.3 创建守护进程(自己实现)1 进程扇与进程链进程扇进程扇构造代码// ps_swing.c#include <unistd.h>#include <string.h>#include <stdio
文章目录1、Zookeeper介绍1.1 什么是Zookeeper2.2 Zookeeper的应用场景2、搭建Zookeeper服务器2.1 zoo.cfg配置文件说明2.2 Zookeeper服务器的操作命令3、Zookeeper内部的数据模型3.1 zk是如何保存数据的3.2 zk中的znode是什么样的结构3.3 zk中节点znode的类型3.4 zk的数据持久化4、Zookeeper客户端(zkCli)的使用4.1 多节点类型创建4.2 查询节点4.3 删除节点4.4 权限设置5、kazoo客户端的
文章目录1 认识Wireshark的界面1.1 初识Wireshark1.2
文章目录1、数对可以组成的最长链2、分配饼干3、不重
文章目录1、把数组中的0移动到数组尾部2、改变矩阵分维度3、数组中连续1的最大个数4、有序矩阵中查找目标数5、有序矩阵中第k小的数6、1-n的数中一个数被另一个替换,找重复和丢失的数7、寻找数组中丢失的数8、寻找数组中重复的数9、寻找数组中重复的数(不修改数组)1、把数组中的0移动到数组尾部283. 移动零(Easy)使用双指针,左指针指向当前已经处理好的序列的尾部,右指针指向待处理序列的头部。右指针不断向右移动,每次右指针指向非零数,则将左右指针对应的数交换,同时左指针右移。class Solu
文章目录1、两数之和2、判断数组中是否有重复的数3、最长和谐序列4、最长连续序列5、LRU1、两数之和1. 两数之和(Easy)方法一:暴力搜索class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: n = len(nums) for i in range(n): for j in range(i+1, n):
文章目录1 基础2 fork函数3 进程空间3.1 进程地址互不影响3.2 虚拟地址到物理地址的映射3.3 fork函数原理3.4 写时复制技术4 fork函数与文件共享5 exec 系列函数与进程空间结构5.1 exec系列函数5.2 进程空间结构5.3 exec + fork6 wait和wai
文章目录第1章 了解 Web 及网络基础1.1 使用 HTTP 协议访问 Web1.2 HTTP 的诞生1.3 网络基础 TCP/IP1.3.1 TCP/IP 协议族1.3.2 TCP/IP 的分层管理1.3.3 TCP/IP 通信传输流1.4 与HTTP关系密切的协议:
文章目录第 1 章 计算机网络和因特网1.1 什么是因特网1.1.1 组成描述描述1.1.2 服务描述1.1.3 协议1.2 网络的边缘1.2.1 接入网1.2.2 物理媒体1.3 网络核心
【C++深度解析】1、C 到 C++ 的升级【C++深度解析】2、C/C++ 中的 const【C++深度解析】3、布尔类型和引用【C++深度解析】4、内联函数分析【C++深度解析】5、函数参数的扩展【C++深度解析】6、函数重载【C++深度解析】7、C++ 中的命名空间【C++深度解析】8、C++ 中的类型转换【C++深度解析】9、const 常量?只读变量?【C++深度解析】...
【C
题目: 输入一个链表,从尾到头打印链表每个节点的值 方法一: 将容器printListFromTailToHead中的内容塞入栈reverse中,在将栈中的元素依次存入顺序容器result,并打印出来,实现将元素从尾到头到打印,由于栈是先进后出到,所以保存进栈中再取出时就可以实现元素顺序到翻转 /** * struct ListNode { * int val; * ...
设置两个指针,kth,end,kth初始化为NULL,当链表的长度小于k值时,返回NULL,表示没有这个节点。当该链表为空时,返回pListHead,k的数值类型为unsigned int,取值可能为0时,当取0时,不成立,返回NULL。 设置一个计数器count,累加count的值,当count=k时,end指向第k个节点,令kth指向pListHead,pListHead与end之间的距离为...
题目:输入一个链表,反转链表后,输出链表的所有元素 方法一:将该链表中的元素压入栈中,再将栈中元素依次取出。 如果链表为空或者只有一个元素,直接返回就可以了,如果元素个数大于等于2,定义指针p,p依次向后指,将链表元素压入栈中,(注意:这里最后一个元素不压入栈中,并将最后一个元素定义为head)因为出栈到时候,s.pop()之后需要马上检验栈是否为空,先写p->next=s.top();...
题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 方法一:使用递归 下面的图使用了一个例子,给出了递归的详细过程,假设pHead1有三个数,分别为1,3,5;pHead2也有三个数,分别为2,4,6。 递归压栈过程:将后面未知的部分看做一个黑盒,newhead指向排好序的最后一个元素,newhead->next指向黑盒,黑盒表示剩...
题目:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空 方法一:对于复杂链表的赋值可以分成三步走。第一步,将复杂链表赋值下来,在每个节点的后面插入一个节点,这个节点为前面那个节点的复制值;第二步,复制复杂关系;第三步,链表进行拆...
题目表述:输入两个链表,找出它们的第一个公共结点分析:公共结点是地址相同的两个结点,也就是同一个结点,由于是单向链表,所有从公共结点之后两链表重合,其拓扑结构为Y型。例如:链表一:3,5,7,4;链表二:1,6,5,7,4;从元素5开始两个链表开始重合,两个链表尾部重合方法一:先计算两个链表的长度,计算两个链表的长度差,让较长的链表先走,直到与较短链表一样的长度,然后二者同时移动,找出首次...
Copyright © 2005-2022 51CTO.COM 版权所有 京ICP证060544号