Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
阿啄debugIT
transmittable-thread-local
提交
193d29e5
T
transmittable-thread-local
项目概览
阿啄debugIT
/
transmittable-thread-local
与 Fork 源项目一致
从无法访问的项目Fork
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
transmittable-thread-local
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
193d29e5
编写于
9月 22, 2020
作者:
oldratlee
🔥
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
! upgrade ci jdks
上级
4bb936fe
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
12 addition
and
8 deletion
+12
-8
README-EN.md
README-EN.md
+1
-1
README.md
README.md
+2
-2
scripts/prepare-jdk.sh
scripts/prepare-jdk.sh
+9
-5
未找到文件。
README-EN.md
浏览文件 @
193d29e5
...
...
@@ -48,7 +48,7 @@
👉 The missing Java™ std lib(simple & 0-dependency) for framework/middleware,
provide an enhanced
`InheritableThreadLocal`
that transmits
`ThreadLocal`
value between threads even using thread pooling components.
Support
`Java`
15/14/13/12/11/10/9/8/7/6.
Support
`Java`
1
6/1
5/14/13/12/11/10/9/8/7/6.
Class
[
`InheritableThreadLocal`
](
https://docs.oracle.com/javase/10/docs/api/java/lang/InheritableThreadLocal.html
)
in
`JDK`
can transmit value to child thread from parent thread.
...
...
README.md
浏览文件 @
193d29e5
...
...
@@ -49,13 +49,13 @@
# 🔧 功能
👉 在使用线程池等会池化复用线程的执行组件情况下,提供
`ThreadLocal`
值的传递功能,解决异步执行时上下文传递的问题。
一个
`Java`
标准库本应为框架/中间件设施开发提供的标配能力,本库功能聚焦 & 0依赖,支持
`Java`
15/14/13/12/11/10/9/8/7/6。
一个
`Java`
标准库本应为框架/中间件设施开发提供的标配能力,本库功能聚焦 & 0依赖,支持
`Java`
1
6/1
5/14/13/12/11/10/9/8/7/6。
`JDK`
的
[
`InheritableThreadLocal`
](
https://docs.oracle.com/javase/10/docs/api/java/lang/InheritableThreadLocal.html
)
类可以完成父线程到子线程的值传递。但对于使用线程池等会池化复用线程的执行组件的情况,线程由线程池创建好,并且线程是池化起来反复使用的;这时父子线程关系的
`ThreadLocal`
值传递已经没有意义,应用需要的实际上是把
**任务提交给线程池时**
的
`ThreadLocal`
值传递到
**任务执行时**
。
本库提供的
[
`TransmittableThreadLocal`
](
src/main/java/com/alibaba/ttl/TransmittableThreadLocal.java
)
类继承并加强
[
`InheritableThreadLocal`
](
https://docs.oracle.com/javase/10/docs/api/java/lang/InheritableThreadLocal.html
)
类,解决上述的问题,使用详见
[
User Guide
](
#-user-guide
)
。
整个
`TransmittableThreadLocal`
库的核心功能(用户
`API`
与框架/中间件的集成
`API`
、线程池
`ExecutorService`
/
`ForkJoinPool`
/
`TimerTask`
及其线程工厂的
`Wrapper`
),只有
不到
**_
1000 `SLOC`代码行_**
,非常精小。
整个
`TransmittableThreadLocal`
库的核心功能(用户
`API`
与框架/中间件的集成
`API`
、线程池
`ExecutorService`
/
`ForkJoinPool`
/
`TimerTask`
及其线程工厂的
`Wrapper`
),只有
**_~
1000 `SLOC`代码行_**
,非常精小。
欢迎 👏
...
...
scripts/prepare-jdk.sh
浏览文件 @
193d29e5
...
...
@@ -15,24 +15,28 @@ if [ ! -f "$HOME/.sdkman/bin/sdkman-init.sh" ]; then
[
-d
"
$HOME
/.sdkman"
]
&&
rm
-rf
"
$HOME
/.sdkman"
curl
-s
get.sdkman.io | bash
||
die
"fail to install sdkman"
echo
sdkman_auto_answer
=
true
>>
"
$HOME
/.sdkman/etc/config"
this_time_install_sdk_man
=
true
fi
set
+u
# shellcheck disable=SC1090
source
"
$HOME
/.sdkman/bin/sdkman-init.sh"
[
-n
"
$this_time_install_sdk_man
"
]
&&
runCmd sdk
ls
java
set
-u
jdks_install_by_sdkman
=(
7.0.262-zulu
8.0.2
52
-zulu
8.0.2
65
-zulu
9.0.7-zulu
10.0.2-zulu
11.0.
7
-zulu
11.0.
8
-zulu
12.0.2-open
13.0.3-zulu
14.0.1-zulu
15.ea.26-open
13.0.4-zulu
14.0.2-zulu
15.0.0-zulu
16.ea.16-open
)
java_home_var_names
=()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录