
JavaEE
文章平均质量分 94
该专栏更加深入学习java
E绵绵
要自律 要chin up
展开
-
【JavaEE】网络原理详解
在应用层这里, 很多时候, 都是程序员"自定义"应用层协议的,(当然,也是有一些现成的应用层协议,咋们之后讲)咱们这里的自定义协议,很简单就能去设定一个,设定规则如下:1.发送数据:按照我们自己设定的方式去得到信息内容 再正常去传输它接受数据:按照自己设定的方式处理 正常接受的数据2.约定好信息按照什么格式来组织TCP优势:可靠传输,TCP 适用于绝大部分场景.UDP优势:更高效率,UDP 更适合于 对于"可靠性不敏感”,"性能敏感”场景。原创 2025-04-03 03:46:21 · 826 阅读 · 1 评论 -
【JavaEE】网络编程socket
这里的输入流和输出流就是我们发送消息的工具,它们是普通的字节流,我们之前文件io里学到的所有方法在这里也全能用,通过该输入流读取数据就能读取到另一个主机发送的数据,同理输出流就往里面写数据就能发送到另一个主机的输入流里。(随机分配的都是没被占用的端口号)对于一个服务器来讲,我们需要让其绑定一个明确的端口号,因为在服务器在网络传输中处于一个被动的状态,没有一个明确的端口号,客户端就无法寻找到请求的服务器。计算机中,这种 抽象 的连接是很常见的,此处的连接本质上就是建立连接的双方,各自保存对方的信息,原创 2025-03-19 02:28:44 · 1336 阅读 · 2 评论 -
【JavaEE】网络原理之初识
只有统一规范好了网络协议(规则),电脑们之间才能通信成功。原创 2025-03-15 03:49:37 · 925 阅读 · 0 评论 -
【javaEE】文件操作--io
文件描述符我们之前在讲解pcb时讲过,每个打开的文件都有一个唯一的文件描述符,它存储在顺序表中,一个进程每次用输入流输出流打开一个文件,就需要在这个表里分配一个文件描述符,而这个数组的长度是存在上限的,如果你的代码,一直打开文件,而不去关闭文件,就会使这个表里的文件描述符,越来越多,一直到把这个数组占满了,后续再尝试打开其他文件,就会出错了,导致系统崩溃,这也叫做文件资源泄露,非常类似于内存泄露。// 输出: C:/Users/Username/Documents/example.txt。原创 2025-03-13 20:19:41 · 747 阅读 · 2 评论 -
【javaEE】多线程(进阶)
比如我的账户里面有2000块钱(状态A),我委托张三说:如果我忘给李四转1000块钱,下午帮我转一下,我在中午给李四转了1000块钱(状态B),但是随后公司发奖金1000到我的账户,此时我账户有1000块钱(状态A),张三下午检查我账户,发现我有2000块钱,于是又给李四转了1000块钱,此时就出现问题了,李四收到了两次1000元,不符合我们的需求了.缩小了锁的粒度,不再将整个数组都加锁,对每个链表都分配了一把锁(将每个链表的头节点对象设为锁),只有当多个线程访问同一个链表时,才会产生锁冲突。原创 2025-03-10 20:23:09 · 876 阅读 · 2 评论 -
【javaEE】多线程(基础)
一个线程就是一个 " 执行流 ". 每个线程之间都可以按照顺序执行自己的代码 . 多个线程之间 " 同时 " 执行着多份代码。原创 2025-03-07 22:16:58 · 1077 阅读 · 0 评论 -
【javaEE】计算机是如何工作的(基础常识)
pcb 是一个非常庞大的结构体, 包含很多属性.(如果大家去翻操作系统源码是能看到的,linux是开源的,linux 中,pcb 叫做 task struct)创建新的进程, 就是创建 PCB 并且把 PCB 插入到链表中,销毁进程, 就是把 PCB 从链表上删除并释放,展示进程列表,就相当于是遍历链表的每个节点。进程是c++要深入了解的。操作系统统计每个进程在CPU上执行的时间,根据这个来进一步调整调度的策略,太少的会变多,太多的会变少。不同的CPU支持的指令是不同的,X86上的指令和arm是不互通的。原创 2025-02-25 00:11:49 · 1754 阅读 · 0 评论