当前位置: 首页 > news >正文

做区块链网站需要注意哪些微信朋友圈的广告怎么投放

做区块链网站需要注意哪些,微信朋友圈的广告怎么投放,深圳网站做的好的公司哪家好,网站域名实名证明本文为Java面经,其中讲述的是在面试过程中回答得不好的地方,在这里补充,以便为后面的面试积累经验 哈罗单车 一面 Q:公司的MySQL数据库,事务隔离级别是什么? A:读已提交(RC&…
  • 本文为Java面经,其中讲述的是在面试过程中回答得不好的地方,在这里补充,以便为后面的面试积累经验

哈罗单车

一面

Q:公司的MySQL数据库,事务隔离级别是什么?

A:读已提交(RC),一个事务在执行过程中允许访问其他事务成功提交新插入的数据,又能访问修改成功的数据。读取数据的事务允许其他事务继续访问该行数据,但未提交的写事务将禁止其他事务访问改行。可以防止脏读,不能防止不可重复读和幻读。

Q:公司的营销配置端应用机器规格配置和JVM是如何设置的。

A:一开始是4核8G60G,后面升级到了8核16G100G。使用4核8G60G时,JVM的xms和xmx设置的都是4G,使用8核16G100G时,xms和xmx都设置成了8G。MetaSpace设置成了512M。xms是jvm heap(堆内存)最小值,即初始化分配的空间。xmx是jvm heap(堆内存)最大允许值,即设定了程序运行期间最大可占用内存的大小,超过了这个值的大小会导致OOM

二面

Q:实现多线程的方式有哪些?

A:①继承Thread类,重写其run方法来实现多线程;②实现Runnable接口,重写run方法;③实现Callable接口,重写call方法,并使用FutureTask类来包装Callable对象,使用FutureTask对象作为Thread对象的target创建并调用start方法启动线程;④通过线程池实现多线程;

Q:线程池一般用哪些线程池?

A:①自定义线程池;②通过Executors创建的线程池(包含SingleThreadExecutor、、CachedThreadPool、FixedThreadPool和ScheduledThreadPool)。

        CachedThreadPool,可缓存线程池,若线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程,该线程池最大程度保证每个请求都能立即被处理。缺点:由于最大线程数被允许为Integer.MAX_VALUE,当线程数过多时,会导致OOM。

        FixedThreadPool,定长线程池,可控制线程池最大并发数,超出的线程会在队列中等待。缺点:由于LinkedBlockingQueue队列是无参构造,默认可存放的队列容量为Integer.MAX_VALUE,当队列中等待的对象过多时,会导致OOM。

        ScheduledThreadPool,周期性线程池,支持任务定时及周期性执行。缺点:同CachedThreadPool。

        SingleThreadExecutor,单线程化线程池,只有一个工作线程可执行,保证所有线程顺序执行。缺点:同FixedThreadPool。

Q:自定义线程池由哪些部分组成?运行的原理是什么?

A:自定义线程池主要由corePoolSize(核心线程数)、maximumPoolSize(最大线程数)、keepAliveTime(线程空闲时间)、unit(keepAliveTime的时间单位)、workQueue(阻塞队列)threadFactory(线程工厂)和handler(拒绝策略的执行器)组成。

        自定义线程池工作原理:

  1. 提交任务,判断corePoolSize是否已满,若未满则判断是否有空闲线程,若没有空闲线程则创建新线程来执行任务,若有空闲线程则直接使用空闲线程执行任务;
  2. 若corePoolSize已满,则判断workQueue是否已满,若workQueue未满则将提交的任务放入workQueue中等待核心线程池执行;
  3. 若workQueue已满则判断maximumPoolSize是否大于corePoolSize,若小于等于,则将新提交的任务交由拒绝策略执行器处理;
  4. 若maximumPoolSize大于corePoolSize,且当先提交线程数大于maximumPoolSize则将新提交的任务交由拒绝策略执行器处理;
  5. 若maximumPoolSize大于corePoolSize,且maximumPoolSize最大线程数未满则将新提交的任务创建新的线程来执行任务;
  6. 当线程池中,超过corePoolSize部分的线程,在其空闲时间超过keepAliveTime和unit的单位时间后,就关闭这部分的线程,使之最终缩减为corePoolSize个线程。如果设置了allowCoreThreadTimeout为ture,则所有线程池中空闲线程超过keepAliveTime后就会被关掉,最终空闲线程数会缩减为零个;

Q:线程池中用到的阻塞队列有哪些?是有界的吗?

A:一般使用到的有ArrayBlockingQueue和LinkedBlockingQueue,都是有界的。其他还有DelayQueue和PriorityBlockingQueue等,都是无界的。

http://www.hkea.cn/news/356880/

相关文章:

  • 万户网站宁波网站制作优化服务
  • 潍坊快速网站排名网站是怎么做出来的
  • 聚美优品的pc网站建设注册网址
  • 陕西省住房与城乡建设厅网站免费b站推广软件
  • 淮南市住房与城乡建设部网站网店买卖有哪些平台
  • 网页qq表情佛山百度快速排名优化
  • 网站建设方案论文1500社会新闻最新消息
  • 网站组建 需求分析市场监督管理局职责
  • 云课堂哪个网站做的好厦门关键词优化seo
  • 中企动力沈阳分公司seo免费诊断电话
  • 网站vps被黑湖人最新排名最新排名
  • 如何夸奖客户网站做的好seo课程心得体会
  • 有哪些做电子商务的网站时空seo助手
  • 临沂百度网站电脑培训机构哪个好
  • 无锡专业做网站的公司怎样把自己的产品放到网上销售
  • 大学网站建设管理办法推广技巧
  • 长春做网站公司seo关键词排名优化软件怎么选
  • 网站开发未按合同约定工期完工seo关键词排名怎么提升
  • 创可贴app海报制作网站百度seo优化方法
  • 龙岗品牌网站建设2024年新闻摘抄
  • 南阳住房和城乡建设厅网站招聘网站排名
  • 如何做网站活动封面建站的公司
  • 温州网站建设培训营销推广方案包括哪些内容
  • 厦门 建网站商业软文案例
  • wordpress读者墙站长之家seo工具包
  • 网站建设哪家好灵活苏州久远网络北京搜索引擎关键词优化
  • 网站优化怎么做 有什么技巧东莞seo建站
  • 什么网站可以做游戏机疫情最新数据消息
  • 企业网站开发报价单巩义网络推广
  • 网站开发技术交流群免费域名申请网站