transmittable-thread-local icon indicating copy to clipboard operation
transmittable-thread-local copied to clipboard

Support TTL/Context transmission on Android | Android 客户端使用TTL进行上下文传递

Open qianxinyi opened this issue 7 years ago • 4 comments

How to transmit context transparently in Android client premain?


在Android 客户端premain 如何进行上下文透明传递?

qianxinyi avatar Apr 08 '18 06:04 qianxinyi

Support for Android was not considered before, mainly because

  • Implementation mechanism for Android
  • Application scenarios

I don't know much.

@qianxinyi can you explain that? Or Do the (similar) implementations exist to meet the needs?


Android支持之前没有考虑,主要是因为

  • Android的要做的实现机制
  • 应用场景

我了解不多。

@qianxinyi 你能说明一下吗?可以有(类似)实现方式做到满足需求吗?

oldratlee avatar Apr 08 '18 07:04 oldratlee

比如,我想做客户端日志调用链的形成,在涉及到多线程执行的时候,就要用你这个TTL框架。但是要想做到透明传输,就要写gradle插件修改JDK源码。不知道大神能写个gradle插件以供小白使用

qianxinyi avatar Apr 08 '18 07:04 qianxinyi

JDK的库的代码(逻辑)在Android中是不是系统接管的? 换句话说,编译期修改不了,而是要运行期加载时修改。 @qianxinyi

如果是运行期加载时修改,要了解Android的运行加载过程。 这个你来研究完成一下,运行时系统类的修改 在Android上应该已经有现成的解决方案了。 # JDK的库的代码(逻辑)修改的量不多,在相关的方法插入了一行代码。

方案和实现你整理好了,我可以整合进来,author是你 😄

oldratlee avatar Apr 08 '18 07:04 oldratlee

大佬们,这个后续有结论了吗?我目前具备将TTL的代码插入Android源码方法中的能力,但是对于业务的线程池却不大好封装,因为业务的线程池使用方法很多,很难统一收归,请问有解决办法吗? @oldratlee

mxj0808 avatar Apr 07 '24 03:04 mxj0808