我有一个方法执行(数据),这需要相当多的时间(取决于数据,如10秒或20秒),它有超时功能,这是30秒的默认值。我想测试一下这个方法。一种方法是收集足够的数据,持续超过30秒,然后看看我是否得到超时异常。另一种方法是使用线程。我打算做的是运行方法几毫秒,然后让线程等待,直到我得到超时异常或使它为一些seconds.Can,任何人,请建议我如何实现这一点。
发布于 2015-07-20 06:55:35
您应该通读Java Thread教程(并发)。任何关于堆栈溢出的答案都需要很长的篇幅来帮助你,线程/并发教程已经很好地涵盖了这一点。
http://docs.oracle.com/javase/tutorial/essential/concurrency/
发布于 2015-07-20 07:03:34
你可以使用
Thread.sleep( millis );使线程休眠所需的时间。
或者,您可以将数据处理代码放入循环中,这样它就可以多次处理它。这将重新创建线程实际处理数据的时间超过30秒的场景。
或者,您可以使用较短的超时值测试代码。
https://stackoverflow.com/questions/31506157
复制相似问题