- 事务的隔离界别
读未提交(Read Uncommitted)
读提交(Read Committed)
可重复读(Repeated Read)--->MySQL默认隔离级别
串行化(Serializable)
https://baijiahao.baidu.com/s?id=1611918898724887602&wfr=spider&for=pc - 数据库锁
按锁的粒度划分:表级锁、行级锁、页级锁
按锁级别划分:共享锁、排它锁、意向锁
按加锁方式划分:自动锁、显示锁
按使用方式划分:乐观锁、悲观锁
https://www.cnblogs.com/kexinxin/p/11620345.html - Object里的函数
1.public final Class<?ectends Object> getClass()返回一个运行时的类 2.public int hashCode()返回对象的哈希码; 3.public Boolean equals(Object o)比较对象是否相等; 4.protect Object clone()返回对象的副本;要声明实现Clonable,要有异常处理,只能在其子类或类内用;当克隆一份对象时,其对象属性只是克隆了一份指向另一个对象的地址值; 5.public String toString()返回对象的字符串表示;打印一个对象默认调用其默认toString()方法; 6.public final void notify()唤醒在此对象监视器上等待的单个线程; 7.public final void notifyAll()唤醒在此对象监视器上的所有线程; 8.protected void finalize()当垃圾回收器确定不存在对该对象的更多引用时,调用此方法回收对象; 9.public final void wait(long timeout)导致当前线程等待,直到其他线程调用此对象的notify()或notifyAll()方法或时间超时; 10.public final void wait(long timeout, int nanos)或其他线程中断当前线程,或超过实际时间:1000000*timeout+nanos; 11.public final void wait()导致当前线程等待,直到其他线程调用此对象的notify()或notifyAll()方法; - String的hashCode
源码 public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value; for (int i = 0; i < value.length; i++) { h = 31 * h + val[i]; } hash = h; } return h; }在String类中有个私有实例字段hash表示该串的哈希值,在第一次调用hashCode方法时,字符串的哈希值被计算并且赋值给hash字段,之后再调用hashCode方法便可以直接取hash字段返回。
String类中的hashCode计算方法还是比较简单的,就是以31为权,每一位为字符的ASCII值进行运算,用自然溢出来等效取模。
哈希计算公式可以计为s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
主要是因为31是一个奇质数,所以31*i=32*i-i=(i<<5)-i,这种位移与减法结合的计算相比一般的运算快很多。 - 贪心算法是什么
贪心法就是这样的算法:它在每个决策点作出在当时看来最佳的选择,即总是遵循某种规则,做出局部最优的选择,以推导出全局最优解(局部最优解->全局最优解)
https://blog.youkuaiyun.com/ds19980228/article/details/82714478 - volatile怎么让其他缓存失效的
Lock前缀指令会引起处理器缓存回写到内存。
lock前缀指令相当于一个内存屏障(也称内存栅栏),内存屏障主要提供3个功能:- 确保指令重排序时不会把其后面的指令排到内存屏障之前的位置,也不会把前面的指令排到内存屏障的后面;即在执行到内存屏障这句指令时,在它前面的操作已经全部完成;
- 强制将对缓存的修改操作立即写入主存,利用缓存一致性机制,并且缓存一致性机制会阻止同时修改由两个以上CPU缓存的内存区域数据;
- 如果是写操作,它会导致其他CPU中对应的缓存行无效。
一个处理器的缓存回写到内存会导致其他处理器的缓存失效。
- JVM能用外面的内存吗
https://www.cnblogs.com/lfs2640666960/p/8516916.html堆外内存,又被称为直接内存。这部分内存不是由jvm管理和回收的。需要我们手动的回收。
堆内内存是属于jvm的,由jvm进行分配和管理,属于"用户态",而推外内存是由操作系统管理的,属于"内核态"
在jdk1.4中新加入了NIO类,他可以调用native函数库直接分配堆外内存,然后通过java堆中的DirectByteBuffer
对象来指向这块内存,进行内存分配等工作。
- 公平锁的实现
https://www.cnblogs.com/little-fly/p/10365109.html
java.util.concurrent.locks.ReentrantLock - 为什么用B+树
https://www.cnblogs.com/tiancai/p/9024351.html - 把项目改成高并发高负载的怎么设计
https://blog.youkuaiyun.com/saydo/article/details/36190537 - 为什么两个Survivor Space
https://blog.youkuaiyun.com/towads/article/details/79784249 - Synochronized中的Monitor是什么
synchronized底层原理
1) monitor
使用synchronized之后,编译后的jvm指令会多出来monitorenter和monitorexit两个指令。效果如下:
monitorenter // 对应代码 monitorexit每个java对象都有一个与之对象的monitor。当然了,类也是Class类型的java对象。每个monitor都有一个计数器。当一个线程过来获取锁时,就会将计数器+1.别的线程如果发现计数器不等于0,就说明有人持有该对象的锁,就会同步阻塞等待。
2) 可重入锁
synchoronized(VolatileDemo1.class){ synchronized(VolatileDemo1.class){ //相应代码 } }对同一个对象可多次加锁。这种情况是这样的:当第一个线程获取锁时,将计数器+1,此时计数器=1.再次加锁,此时计数器=2。其他线程只要发现计数器不等于0.就表明有有别的线程占有锁。而每次走出一个synchronized,就会将计数器-1,直到最后到0,彻底释放了锁。
https://www.cnblogs.com/xtz2018/p/11445961.html#_label1_0 - 数据库缓存
https://www.cnblogs.com/llzhang123/p/9037346.html
Cache Aside 更新模式
Read/Write Through 更新模式
Write Behind Caching 更新模式 - 同步有哪些,线程安全
线程安全性问题出现的三个必要条件:
1、多线程环境下
2、多个线程共享同一个资源
3、对资源进行非原子性操作
解决线程安全的四种方式:
1、synchronized锁(偏向锁,轻量级锁,重量级锁)
2、volatile锁,只能保证线程之间的可见性,但不能保证数据的原子性
3、jdk1.5并发包中提供的Atomic原子类
4、Lock锁
https://blog.youkuaiyun.com/scgyus/article/details/79499650
线程同步:
使用synchronized关键字
wait和notify
使用特殊域变量volatile实现线程同步
使用重入锁实现线程同步
使用局部变量来实现线程同步
使用阻塞队列实现线程同步
使用原子变量实现线程同步 - TCP UDP区别,TCP三次握手过程
https://www.cnblogs.com/zeze/p/9509926.html - 堆栈区别
https://blog.youkuaiyun.com/K346K346/article/details/80849966?utm_source=distribute.pc_relevant.none-task - mySQL引擎,特点
https://blog.youkuaiyun.com/sanyaoxu_2/article/details/90023744
简洁版:https://blog.youkuaiyun.com/qq_35334203/article/details/88604890MySQL 整个查询执行过程,总的来说分为 5 个步骤 :
- 客户端向 MySQL 服务器发送一条查询请求
- 服务器首先检查查询缓存,如果命中缓存,则立刻返回存储在缓存中的结果,否则进入下一阶段
- 服务器进行 SQL解析、预处理、再由优化器生成对应的执行计划
- MySQL 根据执行计划,调用存储引擎的 API来执行查询
- 将结果返回给客户端,同时缓存查询结果
- JVM作用
https://blog.youkuaiyun.com/fraya1234/article/details/80192583
平台无关性
相关推荐
matlab面试问题,前25个MATLAB面试问题
MATLAB面试问题下面列出了常见的MATLAB面试问题和答案。1)什么是MATLAB?MATLAB是一种用于数值计算的高性能语言。它在易于使用的环境中合并了计算,可视化和编程,在该环境中,问题和答案都以熟悉的二进制符号表示。它包含:Math 与计算算法开发建模,仿真和原型制作数据分析,探索和可视化科学与工程图形应用程序开发,包含图形用户界面构建2)解释MATLAB API(应用程序接口)?MAT...
java面试题-try
15.下面关于try块的描述正确的一项是? A. try块后至少应有一个catch块 B. try块后必须有finally块 C. 可能抛出异常的方法应放在try块中 D. 对抛出的异常的处理应放在try块中 正确答案是:C try语句允许我们定义在执行时进行错误测试的代码块。 catch语句允许我们定义当try代码块发生错误时,所执行的代码块。 final...
总结一下:运维工程师面试的经历及面试相关问题
数据量太大的能分表就分表,能分库就分库。基于大家热情高昂的气氛,笔者又花了一个下午的时间回忆并整理在2017年2月24号笔者在东三环边上(快到东四环了,没有地铁过去,到了四惠还要转公交车)的一家传媒公司的面试经历,还好笔者有做笔记的习惯,把之前面试的问题都记录在案,这一次的面试笔者可是记忆犹新,因为这次这家公司都跟笔者发offer了,实在是真心不想去这家公司就找原因推掉了,大家可别学我这么不靠谱。,你要对自己的简历很熟悉,简历上的写的技能自己一定要能说出个一二,因为面试官的很多问题都会挑你简历上写的问。
有关try{}catch{}finally{}面试题
前言 在java中,想必大家都会用到try{}catch{}finally{},try中是来包裹可能会出现异常的代码,catch{}是抛出异常,finally{}是必须执行的代码。但是具体的细节可能没有去深究,今天就带大家来看看常见的面试题。 情况1 public int test() { int i=1; try { System.err.println("try i:"+i); return i; }ca
Postman面试问题
处理接口之间的数据关联操作,可以使用Postman的变量(Variable)和脚本(Script)功能来实现,例如在Pre-request Script中设置变量的值,在Tests中获取响应数据并赋值给变量,在其他请求中引用变量的值。这意味着,如果在不同的范围中定义了相同名称的变量,Postman会使用存储在具有最窄范围的变量中的值。将接口调试通过,可以在Postman的界面中查看请求的发送和响应的接收情况,也可以在Console中查看更详细的日志信息,如果有错误或异常,可以及时修改和重试。
【无标题】IP804A参考资料和管脚作用图
3.3V内置led控制内置EEPROM接口,用于哑应用ip804a,可集成为4X N端口PSE稳压器内置支持外部设备。多个系统和IC总线用于从每个IP804A收集PD电源状态,以支持全局电源管理。多个ip804a可以构建一个具有成本效益的PHY级PSE系统以支持PD分类和电源管理,而无需主机。基于LLDP(IEEE标准8023AT-2009的一部分),可以实时维护PSE和PD之间的动态电源管理,以提高电源效率。IP804A是一款用于POE(以太网供电)系统的4端口PSE(电源设备)控制器IC。
JAVA异常处理相关面试题
1.try{}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果: [java] view plaincopyprint? publicclassTest{ ...
ADS2023仿真变容二极管特性
仿真S-Param仿真控件,设置为Single Point,将频率设置为1MHz,同时勾选Z-parameters,取消S-parameters,从元件库中选择元器件搭建原理图,并根据器件spice提供的相关参数,对原理图中器件参数进行修改,修改完成的电路图如下图所示。添加var控件和MeasEqn控件,相关设置如图所示,Ct为变容管的电容值,Q0为其品质因数。因此,对变容二极管的模型仿真结果是可以信赖的。将其解压,在spice文件夹中,可以找到我们想要的器件参数,和仿真简要电路图。
异常+try+catch与常见面试题
异常 1.什么是异常? 异常是在程序中导致程序中断运行的一种指令流。 2. 处理异常 try{ // 有可能发生异常的代码段 }catch(异常类型1 对象名1){ // 异常的处理操作 }catch(异常类型2 对象名2){ // 异常的处理操作 } ... finally{ // 异常的统一出口 } 3. try+catch的处理流程 ①一旦产生异常,则系统会自动产生一个异常类的实例化对象。 ②那么,此时如果异常发生在try语句,则会自动找到匹配的catch语.
用GraphPad Prism直出单细胞亚群堆叠柱状图
用GraphPad Prism直出单细胞亚群堆叠柱状图
MONAILabel in 3D Slicer 案例1: 在腹部CT中自动分割脾脏
MONAILabel in 3D Slicer 案例1: 在腹部CT中自动分割脾脏。
Java面试题——try/catch
面试题1 public class Main3 { public static void main(String[] args) { System.out.println(test1()); System.out.println("================="); System.out.println(test2()); } public static String ...
C语言编写Picard迭代和牛顿迭代法
为了完成学校计算方法的作业,花了两个多星期将所有实验报告编写出来,看到同桌找代码的辛苦,优快云也没有这类代码,我只是一时兴起,想分享我写的代码与大家共飨,有错误还请多多指正,代码都不难,也是为了让优快云帮我保存下,我辛辛苦苦做出来的,倘若能给别人带来一丝一毫的帮助,我都万分荣幸。 1:什么是Picard迭代 先弄一个满足f(x) = 0的函数将其转化为x= 正在上传… 重新上传 取消 ...
面试中可以问面试官的问题
面试中,可以问面试官的问题 1、不要直接说“我没有问题了” 这样回答有2个负面影响: 第一,你居然不想知道详细的、切身利益相关的、在公司网站和媒体无法获知的情况?这可能会让面试官认为你对这个职位的兴趣并不大。 第二,很多公司都非常注重员工的个性和创新能力,回答“没问题”,可能会让面试官认为你是一个“没想法”的人,给你贴上否定的标签。 2、一定不能问很容易在网上搜到答案的问题,如业务,产品 千万不要...
Field Characteristics 深入解析,理解 SAP ABAP Analytics 中 Dimension 与 Measure 的真正边界
在SAP ABAP Analytics数据模型中,字段应建模为Dimension还是Measure,关键在于业务语义而非数据类型。Dimension提供分析上下文,构成数据坐标系,支持钻取与切片;Measure则需具备明确聚合语义(如#SUM、#MIN、#MAX),且必须满足Distinct(无重复)与Complete(无缺失)原则,确保聚合结果准确。错误的建模会导致聚合偏差,根源常在事实粒度不清或关联关系不当。因此,正确划分字段角色,本质是让Analytical Engine准确理解业务数据的分析逻辑。
回归预测 | MATLAB实现MPR多元多项式回归
回归预测 | MATLAB实现MPR多元多项式回归
面试的时候突然遇到答不上的问题怎么办?
前言 今天给大家讲讲面试过程当中最长遇到的窘境,也是最能体现一个候选人临场应变能力的地方,那就是当我们在面试的过程当中,遇到的问题回答不上来的时候,该怎么办。 误区 在开始讲解之前,先纠正一个误区,那就是对于一场面试而言,最后的结果**好坏并不完全取决于面试当中的问题是否都回答了上来。能不能录取和是否回答出所有问题并没有直接的联系。**换句话说,我自己经历过的,无论是面试也好,还是面别人也罢,问题...
从零开始讲PCIe(8)——PCIe拓扑与组件
从软件角度来看,根复合体内部的总线结构会被认为是一个标准的PCI总线,尽管实际上可能并不是物理的PCI总线,但它被设计为对软件呈现为PCI拓扑的一部分,以保持与旧版PCI软件的兼容性。这是由于其使用了非常高的传输速度。无论是根复合体内部的总线,还是交换机的多个端口,系统会通过与PCI相似的方式将其呈现给软件,使得传统的PCI枚举和配置流程能够继续使用。总体而言,根复合体不仅在物理上位于PCIe拓扑的顶部,而且在逻辑上也是整个PCIe系统的控制中心,它与系统中的所有PCIe设备建立连接,协调它们之间的通信。
[面试]HR最常用的20个面试问题及答案
[面试]HR最常用的20个面试问题及答案 来自前程无忧HR网友“HR女王”的分享: 根据在咨询中针对人事主管的调查,统计出20个人事主管最常问的问题和最喜欢的答案。 我去应聘的时候,初试时我都会看这些问题,有些问题面试官的确会问,而我本人也 做了有半年的初试官,也常会在面试时问起这些问题。 问题1:你为什么想离开目前的职务?
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
NTscan扫描工具
ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。
STM32面试相关问题
STM32面试相关问题
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
面试问题_六个问题,让面试官不再犹豫
找工作面试时,除了被面试官问各种问题,面试者也可以大胆提出自己的问题。主动提问,既可以表示你对这份工作很有兴趣,想多了解,又可以让你知道这份工作更多的信息。但怎么提出合适的问题呢?新媒体商业内幕网(Business Insider)通过采访一些职业建议专家,给求职者们总结出了六个可以问面试官的问题。1.这个职位为什么要招人?这个问题能让你知道,是因为之前的员工离职了,还是公司的高速增长需要扩张,或...
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
面试常见问题
一、 面试问题类 1. 人事经理常问的15个问题 面试,是了解应聘者工作能力和综合素质的最好方法。人事经理的面试问题常常千奇百怪,如果在面试前能掌握一些常问的问题,成功的几率也相应会增大。以下就是人事经理常用的15个面试问题,以供大家参考。 1.请先谈谈你自己的情况。 回答这个问题有两个方法:一是直接回答所问的问题,可回答自己最大的长处、特色,所
手机测试面试问题
(1) 为什么想进本公司? 这通常是面试官最先问到的问题。此时面试官就开始评断录用与否了,建议大家先判断自己去应徵的工作性质,是专业能力导向呢,或是需要沟通能力,其实现在市场多以服务为方向,所以口才被视为基本能力之一,所以在此时就要好好表现自己的口才,而口才较差者就务必表现出自己的专业能力即诚意,弥补口才不足的部分。 回答这个问题时,一定要积极正面,如想要使自己能有更好的发
Java常见框架面试问题,面试官会怎样问关于框架的问题?这里都给你总结好了!
Java常见框架面试问题,面试官会怎样问关于框架的问题?这里都给你总结好了! 前言 经常能够看到网上看到xxx公司的面经,说明公司是有面试套路的。但不只是公司,面试官也可以有自己的面试套路,有些面试官的题可能几年都不变。 (1) 历年题或面经,相信你已经知道了。 (2)应届生与社招不一样。应届生偏基础知识,社招则可能问一些经验性的东西。 (3)跟公司有关,跟公司的业务有关,跟你要进的那个组使用的技术有关,跟它招聘的岗位有关。可以去查一下公司现在热招职位的技术要求有哪一些,有很多时候对方会写出来职位要求,
技术面试中,什么样的问题才是好问题?
技术面试中,什么样的问题才是好问题? 作者熊燚(四火),曾先后任职于华为,亚马逊。 现任 Oracle首席软件工程师,负责研发云基础设施的分布式工作流引擎。除了带团队,也担任公司招聘环节的 Bartender 角色。 很久以前就想谈谈这个话题了,但是最近才有了足够的动机。因为从最近参加的很多 debrief 来看,我认为身边大多数的软件工程师面试中,在通过技术问题来考察候选人这方面,很多都做得不够好。 首先,我要明确的是,这个问题,指的是技术面试中俗称的 “主要问题”,具体来说,就是面试官会..
面试就应该这么回答问题
面试开始的时候,一般第一个问题都是:请你做一下自我介绍?很多人习惯于就是照着简历上,流水账式的做自我介绍。那你这里说的大部分都是废话,面试官扫一眼你的简历就全知道了。面试是一个自我推销的过程,你说的每句话都是应该在向面试官销售自己。那么好的自我介绍应该说些什么呢?应该说你的优势。始终围绕公司和职位,说自己的优势。第一,专业能力的优势;第二,执行力的优势;第三,沟通协作或管理方面的优势,或者其他更高层次的优势。
1万+



被折叠的 条评论
为什么被折叠?



