b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

weixin_33851177

电脑杂谈  发布时间:2020-04-21 01:30:53  来源:网络整理

多线程死锁的伪代码_c++线程死锁_线程 死锁

如何解决哈希冲突

开放地址方法,链地址方法,重新哈希方法,建立公共溢出区

写一个不可避免会导致死锁的伪代码

function A {
    lock(a);
    wait(b);
}
function B {
    lock(b);
    wait(a);
}
复制代码

A和B作为线程执行,并且将发生死锁.

Spring IoC中涉及的设计模式

何时toString()方法需要重写

默认情况下,每个类都有一个toString()方法,该方法将打印类名称和哈希值,但这还不够直观. 当需要在类中反映属性时多线程死锁的伪代码,需要重写toString()方法

判断对象相等时,什么情况下只需要覆盖equals(),什么情况下需要覆盖equals(),哈希码()?

因为哈希码将用于存储地图,例如当重写equals来判断其内容时,如果不重写哈希码,其哈希码将有所不同. 对象.

为什么不重复存储在Set中的元素?如何保证和内部实施?

线程 死锁_多线程死锁的伪代码_c++线程死锁

因为Set实际上是从HashMap继承的,所以它的add方法实际上使用了HashMap的put方法,该方法根据哈希码进行了重复数据删除.

如何确保分布式缓存的一致性(分布式缓存一致性哈希算法?)?分布式会话实现?

一致性哈希算法主要解决了动态缓存扩展引起的缓存失效问题. 一种实现方法是在计算完哈希码后,找到最近的服务器节点,这只会影响一小部分数据.

有三种方法可以实现分布式会话:

Java 8流迭代的好处

主要可以并行处理数据,代码样式更紧凑

项目中使用了JDK的哪些功能

例如,jdk5的自动打包,注释,jdk8的lambda表达式,流,可选

谈谈TreeMap的实现原理吗?红黑树的性质?红树和黑树的遍历方法有哪些?如何解决密钥冲突?什么时候使用setColor()方法?何时会进行旋转和颜色转换?

根据红黑树的实现,红黑树是平衡排序的二叉树,具有以下特性:

红黑树以中间顺序遍历. 由于红黑树满足左子树小于该节点而右子树大于该节点,因此中间遍历方法可使该节点从小变大. 序列输出.

多线程死锁的伪代码_c++线程死锁_线程 死锁

当键冲突时,新添加的值将替换旧值.

setColor()用于颜色转换,并且根节点设置为黑色,新添加的节点最初设置为红色,然后执行平衡搜索.

当树的结构发生变化(例如插入和删除)时,它将引起颜色转换和旋转,并再次变得平衡.

何时创建Spring bean?何时注入依赖项?

在创建Bean对象时完成依赖注入

有一个lazy-init延迟加载属性. 如果它是默认值和false,并且处于单例模式,则在Spring启动时创建Bean. 如果是多种情况或属性为true,则会在context.getbean中创建它,也就是说,仅在需要时才创建

删除ArrayList和LinkList中的元素的时间复杂度

ArrayList的本质是一个数组,而LinkedList的本质是一个链表. 删除元素实际上是分类和讨论的. 如果删除tail元素,则两者均为O(1). 如果它是头,则ArrayList为O(n),因为您需要移动整个元素列表多线程死锁的伪代码,而LinkedList为O(1)),只需修改前端和后端节点的方向即可. 如果删除中间元素,则两者均为O(n).

通常的方法是使用ArrayList进行读取,并使用LinkedList进行修改.

什么是CopyOnWriteArrayList

实际上,它是一个特殊的ArrayList. 如果普通的ArrayList在遍历期间更改数据,它将报告并发错误. CopyOnWriteArrayList主要用于解决此问题. 添加时,它将首先复制一个副本,将元素添加到新数组,然后将原始数组引用指向新数组.

多线程死锁的伪代码_c++线程死锁_线程 死锁

适用于读操作大于写操作的情况,解决了并发问题,但也有两个缺点,一个是内存消耗大,另一个是只能保证最终的一致性而不是强大一致性.

如何实现序列化和反序列化底层

串行化实际上是指将对象转换为字节以进行存储和网络传输. 反序列化是相反的过程. Jdk中的实现是ObjectOutputStream和ObjectInputStream. ObjectOutputStream可以将对象写入流中,而ObjectInputStream可以从流中读取对象. 另外,您可以通过重写readObject和writeObject方法来自定义序列化和反序列化方法.

如何调试多线程程序

IDEA可以右键单击红点进行调试,然后选择线程,然后线程的断点将等待您处理它,而不是直接传递它.

当线程连续两次启动调用时会发生什么

由于状态仅处于就绪,阻塞和执行状态,因此无法从执行状态更改为执行状态,因此将报告非法状态!

HashMap的时间复杂度为O(1),何时为O(n),何时为O(logn)

在没有冲突的情况下,复杂度为O(1),在发生冲突的情况下将存储为列表. 在这种情况下,它将为O(n). 时间复杂度为O(登录)

可以重写wait方法吗?

wait的类型为final,无法重写. 不仅如此,notify和notifyall的类型都是final

c++线程死锁_多线程死锁的伪代码_线程 死锁

一个Controller调用两个服务,而这两个服务分别调用两个Dao. 使用多少个连接池连接?

HTTP,TCP,UDP的区别和连接

简而言之,HTTP属于应用程序层,TCP和UDP属于传输层,HTTP高于TCP和UDP. TCP是需要建立连接的可靠协议,UDP是不需要建立连接的不可靠协议,并且UDP更快. TCP适用于需要可靠传输的场景,而UDP适用于需要高速传输的场景.

TCP和UDP各自的优点,知道哪些成功案例使用UDP协议

TCP主要提供可靠的传输服务,需要三个握手,但速度较慢. UDP不需要先建立连接就可以确认连接,因此可能会有数据包丢失,但是速度更快. UDP成功案例,例如google创建的quic

什么基本协议用于TCP和UDP

IP Internet协议ICMP协议ARP协议

单个UDP消息的最大容量

65535

单个TCP消息的最大容量

1460

TCP标头格式,UDP标头格式

转载于:


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-183027-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      每日福利
      热点图片
      拼命载入中...