Написание java-аннотации для метода синхронизации call

Я хочу написать java-аннотацию, которая умножает вызов метода. что-то вроде этого:

@TimeIt
public int someMethod() { ... }

и когда этот метод вызывается, он должен выводить на консоль, сколько времени занял этот метод

Я знаю, как это сделать в python, это то, что я хочу, чтобы он делал:

from time import time, sleep

def time_it(func):
    def wrapper(*args, **kwargs):
        start = time()
        func(*args, **kwargs)
        stop = time()
        print "The function", func.__name__, " took %.3f" % (stop - start)
    wrapper.__name__ = func.__name__
    return wrapper

@time_it
def print_something(*args, **kwargs):
    print "before sleeping"
    print args, kwargs
    sleep(3) # wait 3 seconds
    print "after sleeping"

print_something(1, 2, 3, a="what is this?")

Итак, мой вопросы есть? Где я могу найти документацию, чтобы написать что-то вроде этого, я пробовал документацию apt , но безуспешно. может кто-нибудь помочь написать что-то подобное?

25
задан roopesh 21 April 2011 в 05:51
поделиться