这只是一个例子。我有一个输入流,我想为它设置一个侦听器。我怎么能做到。第一种方法是创建一个后台线程,反复检查它。
Thread thread=new Thread(){
public void run() {
while(true){
Thread.sleep(100);
//optional sleep to avoid wasting cpu cycles
int c;
if((c=in.read())!=-1)addEventToUIthread(c);
}
}
}
但我认为没有线。睡眠会浪费cpu周期。和它一起;它会降低获取事件的准确性。假设输入流是一个无法访问的输出流正在写入的文件。这只是一个例子,说明我不知道这种后台线程的运行时成本。请解释一下。
如果要立即读取输入字节,则不需要使用线程。睡在这里是为了保护CPU周期,因为InputStream。read()方法是同步运行的,换句话说,它阻塞直到有一个字节可用。
但是,如果您想在读取数据时有意降低CPU使用率,请使用线程。睡眠将是正确的方式。
我有一个基本回收适配器,如下所示: : 基本视图保持架为: 假设ViewHolder有两个视图,一个TextView和一个ImageView。如何对ViewHolder的itemview中的所有项目实现ClickListener
我有一个带有按钮的JFrame。当用户按下按钮时,将执行一系列耗时的操作。我在表格上有一个JLabel,上面写着“请稍候”,我想在执行操作时变得可见,然后在完成时变得不可见。因此,我将放在动作侦听器的开头,放在末尾,但没有任何反应。 似乎标签的显示正在排队,直到操作完成,所以它只是可见,然后立即不可见。在继续操作侦听器中的其余代码之前,如何确保标签变为可见?
是否有任何直接的方法将日期设置为变量,但作为输入?我的意思是我不知道日期在设计时,用户应该给它。我尝试了以下代码,但它不起作用:Calendar mydate=new GregorianCalendar(int year,int month,int day);
问题内容: 我在try / catch块中有以下代码 我的问题是,当我必须在finally块中关闭这些流时,是否必须关闭所有3个流,或者仅关闭 befferedreader 会关闭所有其他流? 问题答案: 按照惯例,包装流(用于包装现有流)在关闭时会关闭基础流,因此仅在示例中必须关闭。而且,关闭已经关闭的流通常是无害的,因此关闭所有3个流都不会受到伤害。
我正在开发一个Android聊天应用程序。一切运作良好,但除了一件事;我想设置一个布局的可见性消失,然后设置一个不同的布局可见时,用户开始输入编辑文本,就像在WhatsApp上实现的。但是我似乎想不明白。任何帮助都将不胜感激 基本上,我想做的是设置一个布局的可见性,该布局包含一个图像按钮,用于将图像上载到gone,然后显示一个布局,该布局包含一个图像按钮,用于在用户开始键入时将edittext中的
我正在制作Instagram克隆应用程序。我想添加双击功能。如何在ImageView上设置双击侦听器?