【问题标题】:Thread information of intercepting method Spring AOP拦截方法Spring AOP的线程信息
【发布时间】:2013-08-10 23:11:01
【问题描述】:

有没有办法使用某种环绕通知来找出 AOP 拦截的方法的线程信息?例如,如果我的周围建议正在拦截登录方法,有没有办法通过 joinpointcut 等类获取实际运行登录方法的线程的信息?提前致谢。

【问题讨论】:

    标签: multithreading spring spring-aop threadcontext


    【解决方案1】:

    使用:

    Thread.currentThread();
    

    静态方法java.lang.Thread.currentThread()返回对当前正在执行的线程对象的引用。

    【讨论】:

    • Thread.currentThread() 给出了当前正在执行的线程的引用,但是你确定被拦截的方法和代理在同一个线程下运行吗,因为在Spring AOP中,代理bean是创建..所以我不确定是否同一个线程负责执行方法和创建代理..代理可以由一个线程创建,方法可以由另一个线程执行,并且这两个线程可以在某个时候加入..
    • @Adithya Puram:如果 spring 创建一个新线程来执行切面,那将是非常令人惊讶的。 (除非是@Async注解)——不管怎样:你测试过吗,还是你只是问我希望我知道答案?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-04
    • 1970-01-01
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多