Java 如何让我的处理程序在微秒而不是毫秒内调用runnable?

Java 如何让我的处理程序在微秒而不是毫秒内调用runnable?,java,android,handler,Java,Android,Handler,如何让我的处理程序在微秒而不是毫秒内调用runnable 我有一个名为“pollTask”的可运行程序,我的处理程序每1毫秒调用一次。但是,我想知道我可以使用什么方法让处理程序每x微秒调用一次“pollTask”runnable?我理解这可能需要完全不同的方法,但我愿意接受任何建议。谢谢 myHandler.postDelayed(pollTask, 1); 你就是不能。但是,您可以使用api轻松地将纳秒转换为毫秒。您应该解释一下为什么需要频繁执行此任务。Android不是一个,您指定给pos

如何让我的处理程序在微秒而不是毫秒内调用runnable

我有一个名为“pollTask”的可运行程序,我的处理程序每1毫秒调用一次。但是,我想知道我可以使用什么方法让处理程序每x微秒调用一次“pollTask”runnable?我理解这可能需要完全不同的方法,但我愿意接受任何建议。谢谢

myHandler.postDelayed(pollTask, 1);

你就是不能。但是,您可以使用api轻松地将纳秒转换为毫秒。

您应该解释一下为什么需要频繁执行此任务。Android不是一个,您指定给
postDelayed()
的任何
delayMillis
都只是一个最小间隔,不能保证在任何特定的时钟周期内执行。我试图手动读取麦克风的最大振幅(使用可以在44.1KHz写入文件时执行此操作的API),这种方法听起来有问题。通常,当计算机必须以较高(相对)速率传输数据时,设备驱动程序会将大量测量数据批处理到单个缓冲区中,而不是要求CPU以较高速率轮询。(提示:是操作系统的内置功能,它可以更优雅地解决此问题。)