
Java
文章平均质量分 94
Java
freedom
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
网络编程原理:回显服务器与客户端通信交互功能
交换机是因为路由器的LAN口过少,而需要连接到路由器的节点过多,这时候交换机的WAN通过连接路由器的LAN口,然后通过交换机的LAN口来连接其他的路由器的WAN或者电脑,来实现层层连接,构成更复杂的网络结构。在计算机中,通过网络,可以让两个主机之间相互通信,在实现相互通信的过程时,需要我们开发者通过应用程序(应用层)通过系统的API与传输层进行交互。在网络中,本质是通过光/电信号来传输数据,通过低电平表示1,高电平表示0 ,高频光信号表示1 ,低频光信号表示0。原创 2024-12-29 16:05:39 · 6875 阅读 · 110 评论 -
Java多线程第三篇-多线程的代码相关案例
而上述代码中,如果线程1和线程2在执行的过程中,线程1可能会在编译器中为了优化从而将创建对象的步骤打乱,由原来的123,可能修改为132步骤,直接将将一个地址给到instance,这时候给到t2的是一个非空的非法对象,这时候因为不为空,t2直接返回该结果,这时候t2可以访问到属性方法,就会导致出现bug。在懒汉模式中,我们将类成员定义为null,初次创建对象是在条件中进行的,而当我们在条件中时,因为多线程是同时执行,我们这时候可能会因为多个条件成立而进入从而new出多个对象,这样会导致线程不安全。原创 2024-12-23 12:13:54 · 1350 阅读 · 78 评论 -
Java多线程第二篇-线程的常用方法和线程安全
我们可以减少读取的次数,通过sleep睡眠来限定load的读取次数,此时就不会出发内存可见性问题,但是什么时候代码会被JVM优化,我们人是不清楚的,只有机器清除,所以我们尽量使用volatile更保险一些,此方法知道即可。这时候就陷入一种嵌套循环,形成死锁。如果有两把锁设a、b,线程1获取到锁a,然后线程2也获取到锁b,这时候线程1嵌套获取b锁,线程2嵌套获取a锁,则循环等待锁释放,进不去出不来。所谓的可重入锁,指的是一个线程,一把锁,加锁两次,会出现死锁,就是“不可重入“,反之,就是”可重入“。原创 2024-12-23 12:13:33 · 1857 阅读 · 41 评论 -
Java多线程第一篇-认识多线程
当重写Thread方法时,run和start都是Thread的成员属性,run描述了线程的入口(线程要做的事情)start才是真正的调用了系统的API,在系统中创建出了线程,让线程在调用run。,操作系统目前包含多个进程而每个进程中包含着单个或者多个线程,一个进程由多个PCB(线程)来表示在代码中,如果进程出错后,不会影响到其他的进程的资源分配。线程的身份标识,类似于PID,标记一个进程中唯一的线程,是java提供的id,而不是API或者PCB提供的id。状态、优先级、上下文、记账信息…原创 2024-12-19 18:20:41 · 2487 阅读 · 87 评论 -
Java的栈与队列以及代码实现
栈分为栈顶和栈底,最先进的为栈底,最后进的为栈顶。队列分为队头和队尾,最先进的为队头,最后进的为队尾。原创 2024-11-15 10:49:54 · 6215 阅读 · 56 评论 -
java双向链表解析实现双向链表的创建含代码
想要删除任意节点可以直接通过访问下一个节点使其prev获取想要删除的上一个节点,然后将想要删除的上一个节点.next获取到被删除对象下一个节点的指向这里我们可以模拟实现MyListCode类中的一些方法,入头插法、尾叉法、任意位置插入节点、指定元素删除含有该元素的第一个节点、指定元素删除含有该元素的所有节点等…原创 2024-11-11 22:17:51 · 1559 阅读 · 13 评论