面试官问你多线程你该怎么回答
你说我不会吧,我还确实略懂一二。
你说我会吧,我还真不太会表达。
事实上,一些在开发过程中很少用到的知识点,我们很容易遗忘,因此想要记住这些知识点,在面试过程中从容不迫,我们该怎么做呢?
问: 你了解多线程吗?讲一讲吧!
OK,既然面试官要我们来讲,那么我们就要把握住这个机会,把面试官带到我们自己的节奏中来。一句话,节奏把握好,offer早点拿~~
最好是自己从头到尾的讲一遍,可以试试按照下面我给的方式去说
好,下面我们就开始
还是先举个例子🌰,方便大家理解。
这就是单线程(自己一个人做事)和多线程(多个人同时做事)的区别。
因此使用多线程的目的是:
优点:
缺点:
一般来说,多线程的技术方案有四种:
使用GCD只需要记住关键一点就是把 任务 放到 队列 中。
而我们有两种方式来把任务放到队列中。
1、同步方式 在当前线程中把任务放到队列中
2、异步方式 开启新的线程把任务放到队列中
回答完这些内容应该就可以了,下面列出一些GCD的常用的内容
用于多个异步操作之后统一对非线程安全的对象进行处理
用于多个异步操作完成之后继续做某些事情
注意⚠️: 在主线程上执行主队列的同步任务会产生死锁
关于这个问题有点绕,面试的时候记住就好啦
我这里讲的仅仅是多线程的基础,平时面试回答这些肯定够用,自己没事多练习几遍,面试的时候会更加自信!!
后面会继续更新其他面试问题,希望大家多多支持!!!
2024-11-19 广告