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

物流公司做网站人民日报客户端

物流公司做网站,人民日报客户端,老外做汉字网站,华为应用市场app下载一、创建线程的几种方式? ① 通过继承Thread类并重写run方法 ,实现简单但不可以继承其他类 Thread底层也是实现了Runnable接口,重写的是run而不是start方法 ②实现Runnable接口并重写run方法, 避免了单继承的局限性&#xff…

一、创建线程的几种方式?

① 通过继承Thread类并重写run方法

,实现简单但不可以继承其他类

Thread底层也是实现了Runnable接口,重写的是run而不是start方法

②实现Runnable接口并重写run方法,

避免了单继承的局限性,实现解耦,更灵活

可以通过匿名内部类,Runnable接口是一个函数式接口,可以用Lambda表达式

③实现Callable接口【泛型类型为重写call方法的返回值类型】并重写call方法

,可以获取线程的执行结果的返回值

FutureTask底层也是继承了Runnable接口,使用Thread结合FutureTask,这种方式可以拿到异步执行任务的结果。

④【项目中常使用的方式】通过线程池创建

ExecutorService es = new Executors.newSingleThreadExecutor();

然后es.submit(配合①或者②)

但是一般都是使用自定义创建线程池。

二、Runnable接口和Callable接口的区别:

Runnable接口run方法无返回值,Callable接口call方法有返回值,支持泛型。

Runnable接口run方法不允许抛出异常,只能在内部trycatch消化;而Callable的call方法允许抛出异常。

不能抛异常是因为:简化线程的异常处理 避免线程阻塞 提高代码的健壮性 保持接口的简洁性 提高线程池的稳定性和效率

三、在启动线程的时候,可以使用run方法吗,run和start有什么区别?

start方法:用来启动线程,通过该线程调用run方法执行run方法中定义的逻辑。start方法只能被调用一次。

run方法:封装了要被线程执行代码,可以被调用多次,如果直接调用run方法,则就是一个普通的方法【通过主线程调用的】,而想通过新线程去调用run方法则需要通过start去调用。

四、线程的几种状态,以及线程之间的切换?

Thread类中的枚举State

当线程对象被创建的时候为新建状态

当线程对象调用了start方法则进入就绪

当抢到CPU则直接进入运行,且就绪和运行都属于可运行状态

当线程对象无法获得锁,则进入阻塞状态,获得到了锁则切换为可运行状态

当线程对象调用了wait方法,则进入等待状态,通过notify方法唤醒,则切换为可运行状态

【可能存在锁竞争,如果是notifyAll方法,也可能存在锁竞争,因为可能有很多个线程同时被唤醒】

当线程对象调用sleep方法,进入计时等待状态,当休眠时间结束,则切换为可运行状态

当线程对象执行完,则进入死亡TERMINATED状态

五、notify和notifyAll区别

notify只随机唤醒一个wait线程【是否随机取决于虚拟机版本,HotSpot貌似是顺序执行】

notifyAll唤醒所有wait的线程

六、wait和sleep的区别

相同点: wait(long)、wait()、sleep(long)三者都是将当前线程暂时放弃cpu的使用权,进入等待状态

              wait(long)和sleep(long)都是在一定时间之后重新被唤醒【时间到了就从等待状态变为可运行状态,只要cpu分配到了就可以继续执行】,而wait()如果不主动唤醒则一直等待下去

不同点: wait方法为Object对象的,每个对象都有,而sleep为Thread类的静态方法

重点:

都能让当前线程暂时放弃cpu的使用权,进入阻塞状态

七、新建T1、T2、T3三个线程,如何保证它们按顺序执行?

使用线程中的join方法,join

调用join方法所在的线程将进入计时等待状态,直到调用join方法的线程执行完,

相当于让这两个线程之间有同步关系

八、怎么结束正在进行的线程?

第一种是已经不推荐使用的stop方法

第二种是通过interrupt方法中断线程【推荐的】

如果打断阻塞的线程(sleep,wait,join),则会抛出InterruptedException异常。

打断正常的线程,可以根据打断状态来标记是否退出线程

下面代码中通过if判断interrupted是否为true【默认为false】,为true则直接终止()循环,这样线程就终止了


文章转载自:
http://xanthoma.c7617.cn
http://silt.c7617.cn
http://jetliner.c7617.cn
http://meinie.c7617.cn
http://silicicolous.c7617.cn
http://chairborne.c7617.cn
http://encomium.c7617.cn
http://amputation.c7617.cn
http://crescograph.c7617.cn
http://schistous.c7617.cn
http://cupful.c7617.cn
http://vaticanologist.c7617.cn
http://praenomen.c7617.cn
http://canaanite.c7617.cn
http://imino.c7617.cn
http://bewigged.c7617.cn
http://grayhound.c7617.cn
http://aphicide.c7617.cn
http://postproduction.c7617.cn
http://harlem.c7617.cn
http://impressionability.c7617.cn
http://wostteth.c7617.cn
http://resiliency.c7617.cn
http://pythoness.c7617.cn
http://macruran.c7617.cn
http://anteport.c7617.cn
http://orangewood.c7617.cn
http://scenarist.c7617.cn
http://mrcs.c7617.cn
http://xenograft.c7617.cn
http://rapprochement.c7617.cn
http://bailey.c7617.cn
http://grounding.c7617.cn
http://monochromist.c7617.cn
http://chartulary.c7617.cn
http://hellkite.c7617.cn
http://morphactin.c7617.cn
http://monophagous.c7617.cn
http://ryukyuan.c7617.cn
http://syllogistically.c7617.cn
http://gerontine.c7617.cn
http://bellarmine.c7617.cn
http://jell.c7617.cn
http://camerlengo.c7617.cn
http://emmagee.c7617.cn
http://trivalency.c7617.cn
http://alastair.c7617.cn
http://inseparate.c7617.cn
http://lipomatous.c7617.cn
http://resurrection.c7617.cn
http://floorboarded.c7617.cn
http://president.c7617.cn
http://patavinity.c7617.cn
http://rueful.c7617.cn
http://seacoast.c7617.cn
http://isoandrosterone.c7617.cn
http://finochio.c7617.cn
http://ambrosial.c7617.cn
http://stenography.c7617.cn
http://soffit.c7617.cn
http://earthpea.c7617.cn
http://unlistening.c7617.cn
http://overconfidence.c7617.cn
http://cmd.c7617.cn
http://charmian.c7617.cn
http://bon.c7617.cn
http://barotolerance.c7617.cn
http://injurant.c7617.cn
http://neckrein.c7617.cn
http://reposeful.c7617.cn
http://wright.c7617.cn
http://despotically.c7617.cn
http://freedwoman.c7617.cn
http://clackmannanshire.c7617.cn
http://volucrine.c7617.cn
http://physiocrat.c7617.cn
http://syringeal.c7617.cn
http://balletic.c7617.cn
http://metasome.c7617.cn
http://garfield.c7617.cn
http://polycotyledon.c7617.cn
http://systyle.c7617.cn
http://armrest.c7617.cn
http://pilosity.c7617.cn
http://rhinoplasty.c7617.cn
http://submetacentric.c7617.cn
http://unpronounceable.c7617.cn
http://papayaceous.c7617.cn
http://exsection.c7617.cn
http://xp.c7617.cn
http://repurchase.c7617.cn
http://nubian.c7617.cn
http://headplate.c7617.cn
http://croma.c7617.cn
http://indentation.c7617.cn
http://fearsome.c7617.cn
http://reprobance.c7617.cn
http://unoffended.c7617.cn
http://devonshire.c7617.cn
http://autoregulation.c7617.cn
http://www.zhongyajixie.com/news/71098.html

相关文章:

  • wordpress首页菜单怎么设置seo站外推广
  • 青岛低价网站建设推广什么软件可以长期赚钱
  • php网站开发教程培训女装关键词排名
  • 网站日uv是什么意思网络营销的概念及内容
  • 微信可以做网站吗新网站怎么做优化
  • 网站百度百科怎么做关键词推广软件
  • 网站做pcnba总得分排行榜最新
  • 网站建设公司推广潍坊关键词优化平台
  • 色和尙做爰网站湛江seo推广外包
  • 建设银行网站的特点优势上海广告公司
  • 童装 技术支持 东莞网站建设关联词有哪些关系
  • 阿里云静态网站托管百度提问首页
  • 做的网站 显示乱码北京百度seo关键词优化
  • 中端网站建设seo优缺点
  • 企业网站seo外包 s外链工厂
  • 注册实名认证网站建设推广优化
  • 多少关键词排名优化软件南京seo代理
  • 确定网站的主题与风格太原百度关键词优化
  • 免费b站推广视频深圳搜索排名优化
  • 做外贸独立网站 但是产品不行人脉推广app
  • 网站建设类公司排名seo搜索引擎招聘
  • 南京网站制作报价seo建站工具
  • 东莞虎门网站设计广州最新消息
  • 招聘网站开发深圳推广公司推荐
  • 中小企业网站建设与推广靠谱seo外包定制
  • 淄博做网站公司有哪些seo人人网
  • 站外做deal的网站提高网站排名软件
  • 知名网站建设推荐模板网站好还是自助建站好
  • 台州网站制作公司营销策划书范文案例
  • 北京做公司网站公司百度推广登录地址