Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
73e68b4b
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
大约 1 年 前同步成功
通知
282
Star
12117
Fork
2091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
200
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleHub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
200
Issue
200
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
73e68b4b
编写于
9月 16, 2020
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add lock when install HubModule
上级
be093813
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
12 deletion
+16
-12
paddlehub/module/manager.py
paddlehub/module/manager.py
+16
-12
未找到文件。
paddlehub/module/manager.py
浏览文件 @
73e68b4b
...
...
@@ -19,7 +19,9 @@ import sys
from
collections
import
OrderedDict
from
typing
import
List
from
paddlehub.env
import
MODULE_HOME
import
filelock
from
paddlehub.env
import
MODULE_HOME
,
TMP_HOME
from
paddlehub.module.module
import
Module
as
HubModule
from
paddlehub.server
import
module_server
from
paddlehub.utils
import
xarfile
,
log
,
utils
,
pypi
...
...
@@ -100,17 +102,19 @@ class LocalModuleManager(object):
source (str|optional): source containing module code, use with name paramete
'''
if
name
:
hub_module_cls
=
self
.
search
(
name
)
if
hub_module_cls
and
hub_module_cls
.
version
.
match
(
version
):
directory
=
self
.
_get_normalized_path
(
hub_module_cls
.
name
)
if
version
:
msg
=
'Module {}-{} already installed in {}'
.
format
(
hub_module_cls
.
name
,
hub_module_cls
.
version
,
directory
)
else
:
msg
=
'Module {} already installed in {}'
.
format
(
hub_module_cls
.
name
,
directory
)
log
.
logger
.
info
(
msg
)
return
hub_module_cls
return
self
.
_install_from_name
(
name
,
version
,
source
)
lock
=
filelock
.
FileLock
(
os
.
path
.
join
(
TMP_HOME
,
name
))
with
lock
:
hub_module_cls
=
self
.
search
(
name
)
if
hub_module_cls
and
hub_module_cls
.
version
.
match
(
version
):
directory
=
self
.
_get_normalized_path
(
hub_module_cls
.
name
)
if
version
:
msg
=
'Module {}-{} already installed in {}'
.
format
(
hub_module_cls
.
name
,
hub_module_cls
.
version
,
directory
)
else
:
msg
=
'Module {} already installed in {}'
.
format
(
hub_module_cls
.
name
,
directory
)
log
.
logger
.
info
(
msg
)
return
hub_module_cls
return
self
.
_install_from_name
(
name
,
version
,
source
)
elif
directory
:
return
self
.
_install_from_directory
(
directory
)
elif
archive
:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录