onKeyUp 方法处理按键释放事件。
本质痛点就是我这边增加的快,发送过去(其实是有延迟的),增加很快,但是我松手了,还是没有停止。
因为虽然松手了,但是因为有延迟所以还是看起来是没有停止。
一旦按下,接收端其实是秒响应的。 其实看着有延迟,其实是发给盒子,盒子进行发送的。
一开始图像就是会有发送解析的延迟,是七秒之前的效果。
现在延迟没那么严重,其实你停了,还是会继续的。
其实本质的原因就是不能够做到同步。依我看啊,那就不是说停止的还在继续的事情,那明明就是队列里积累太多,导致还在发送。
所以当松开时,直接停止任何的发送操作就好了。
由于延迟,其实单按还是会慢,只不过不会无限往上增。而长按发送键码次数太多,导致一直积压,松开按键也仍在增长,而且很快。
需要做到的就是按下有长按的键码,松开后有松开的键码。感觉有点难。
5秒钟有100次事件,那么每秒钟触发了20次按下事件。
一秒钟触发20次改变不了。
一秒钟20次。50毫秒一次。
而我直接每六次才做一次处理,也就是说一秒钟也就3次,频率缩小6倍。
---------------------------------
其实啊,之前就是什么呢,一直在监听,一秒钟触发的事件极其的多。
现在出触发40次,但是一次过后的我就不处理了!!!
现在在线程中进行处理们,其实就是为了减少触发事件的个数。
假如我限制到10个,仍然会增长的很快,但是到10个就会停止。我需要在松开时使他停止。
直接放进队列里了,我何不调用线程来加入到队列
1.随便长按,最好一秒20个事件
2.一个事件打开一个
假如一秒不增加40个不就行了,只减少个数也不行。因为会看起来是遥控器不起作用了。
按一下,啪,打印日志了,启动线程了。 问题在于没用。
假如按下一次,假如长按怎么处理?
长按时,一旦都把键码加入队列,看起来就延迟并且不受控制。
一但都用线程也表示,那么就延迟。
要的是,单击时,立马就加入队列中。然后就可以立即生效。
点击按键->事件-》加入队列 单次,长按都是这样。