我使用过JDK和其他库(如hibernate )提供的简单批注,但我从未编写过自己的批注。有人能帮我决定注释是否是正确的方式吗?
我想像这样注释一个方法:
@MyAnnotation(5)
public void foo() {
methodThatMightTakeLongerThan5();
}当foo花费的时间超过5秒时,在我的日志文件中打印一条消息。使用注释可以做到这一点吗?这是首选的实现吗?
更进一步……我希望能够通过JMX bean修改传递给注释的值,这样我就可以在运行时修改它。这是可能的/首选的吗?
发布于 2013-04-09 07:48:09
您可以将methodThatMightTakeLongerThan5();放入线程中,在foo()中运行线程,使用Thread.sleep(5000);等待5秒,然后检查线程是否已完成。如果没有,请打印所需的任何内容。我假设有一种方法可以检查线程是否正在运行,但我不确定。
https://stackoverflow.com/questions/15890553
复制相似问题