Android最全大话Android多线程(一) Thread和Runnable的联系和区别(1),2024年最新面试官离职了

资源分享

  • 最新大厂面试专题

这个题库内容是比较多的,除了一些流行的热门技术面试题,如Kotlin,数据库,Java虚拟机面试题,数组,Framework ,混合跨平台开发,等

  • 对应导图的Android高级工程师进阶系统学习视频
    最近热门的,NDK,热修复,MVVM,源码等一系列系统学习视频都有!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

if (ticket > 0) {
Log.e(“T公司”,name + “卖了一张票,编号为t” + (ticket–));
}
}
}
}

业务员一大早就开始卖票,很快就卖完了(实例化Thread的子类,调用start()方法启动该线程)

TicketThread t1 = new TicketThread(“1号业务员”);
TicketThread t2 = new TicketThread(“2号业务员”);

t1.start();
t2.start();

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

而小R的业务流程则是这样的(实现Runnable接口,重写Runnablerun()方法)

public class TicketRunnable implements Runnable {
private int ticket = 5;

public void run() {
for (int i = 0; i < 5; i++) {
if (ticket > 0) {
Log.e(“R公司”,Thread.currentThread().getName() + “卖了一张票,编号为r” + (ticket–));
}
}
}
}

业务员同样很快就把票卖完了(创建Thread子类的实例,将实现了Runnable接口的对象作为参数实例化Thread对象,调用start()方法启动线程)

TicketRunnable runnable = new TicketRunnable();
Thread r1 = new Thread(runnable, “1号业务员”);
Thread r2 = new Thread(runnable, “2号业务员”);

r1.start();
r2.start();

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

事毕,两人决定吃个饭庆祝一下。一番交流后,小R很惊讶小T为啥可以将同样的票多卖一倍的钱,小T得意地安利了自己的卖票心得:

“因为我将票复印了一份,这样我两个小弟就可以各拿一份票去兜售了(通过继承Thread的方式,当新创建一个线程启动时,其绑定的任务同样也新建了一份,这样他们的任务是相互独立的,自然也无法实现资源共享了)”

小R听后感叹不已:

“竟然还有这种操作?我耿直地将票交给两个业务员就算了啊(实现Runnable接口的方式,因为都是用同一个Runnable对象创建的线程,因此多线程实际上执行的是同一个任务,这样也就共享了资源)”
接着小R又问小T:“你这么干,事后不怕买到假票的人来找你?” 小T听后不以为然道:
“怕啥,我们不都是干完一票就跑路的么(线程执行完run()方法后会自行销毁)”
小R:“我从未见过有如此厚颜无耻之人…”
(未完待续…)


下章预告

由于小R诚信经营,生意越做越大,但最近他却收到了一些投诉,有顾客说他们买到了假票。小R怀疑是自己手下干的,遂决定招个人监督自己的手下。这天,一个自称synchronized的男人前来应聘…

最后

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析

资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

6601)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值