我觉得你对相关概念的理解还比较混乱,一些基础的还需要进一步掌握
1. 中断处理中肯定不能有死循环,否则是不能跳出中断处理的,一般中断处理要求能够迅速结束
2. 不知道你所谓的把中断关闭具体是指什么?外部中断响应?其实这个即使关闭了也仅仅是不能再响应外部中断,如果还有级别更高的中断,有些一样可以在中断处理中再中断,如果当前中断处理是不可打断的,就必须要执行完后退出才能进行其他处理。
3. 程序内有死循环 和 中断处理中有死循环 是两个概念,程序中其实是允许死循环的,大多数逻辑开发中的主进程最后都会进入一个死循环中
你后面的我想你是想问: 如何通过中断处理的方式,判断长按、短按
这里需要具体看你的中断触发机制设定,如果能区分按下和释放按钮的情况,则比较简单,因为这个是不同的中断触发,容易区别,比如按下中断的处理是启动一个计数器,释放时停止计数器并根据计数器最后数值是否大于阀值即可区分 到底是长按还是短按。
有些时候可能没有那么好的中断触发(比如是UI界面的触摸操作),就需要分析相应信号来处理(这时中断大类可能是一个,但中断信息中的信息可能是不同的),但整体的处理思路是类似的。