朋友面试的时候遇到的①个问题,原题是:写①个死循环里面正常的处理业务逻辑,怎么解决内存溢出和跳出循环的问题?;在我的印象中正常情况下只有递归才会导致堆栈溢出,循环导致内存溢出还没有遇到过这个情况所以更无法谈解决方法;
本质上所有的操作系统都是①个死循环,不停的接收以及响应用户的处理和给予反馈,也没见到操作系统本身因为这个而引起任何问题不是?
真正的问题在于要分析清楚你所需要的所有资源的生命周期,包括内存的申请和释放,外设的创建和销毁等等。只要是你申请的资源,你必须确认他能够及时正确的得到销毁。
还有①点是既然死循环必须要考虑何时和怎样释放CPU,例如利用信号量等待将当前任务/进程挂起,或者简单的利用wait/sleep之类函数主动释放。否则内核态可能引起狗复位,用户态可能导致整个系统响应很慢\", \"extras\": \"\", \"created_time\": ①③⑧③⑥⑧②④⑨⑤ · \"type\": \"answer
还有说烧内存的..死循环明明是烧cpu,我也是醉的不行,为什么会烧显卡
.....这和显卡有个卵关系,死循环占你内存,你会卡的不行
和显卡没关系,占用内存。机器可能卡死