mirror of
https://github.com/clearml/clearml
synced 2025-02-02 01:54:23 +00:00
Fix WeightsFileHandler add_callback is not multi-thread protected
This commit is contained in:
parent
4ce0e4faf3
commit
bc67a64d2a
@ -179,7 +179,7 @@ class WeightsFileHandler(object):
|
|||||||
model=None, upload_filename=None, local_model_path=local_model_path,
|
model=None, upload_filename=None, local_model_path=local_model_path,
|
||||||
local_model_id=filepath, framework=framework, task=task)
|
local_model_id=filepath, framework=framework, task=task)
|
||||||
# call pre model callback functions
|
# call pre model callback functions
|
||||||
for cb in WeightsFileHandler._model_pre_callbacks.values():
|
for cb in list(WeightsFileHandler._model_pre_callbacks.values()):
|
||||||
# noinspection PyBroadException
|
# noinspection PyBroadException
|
||||||
try:
|
try:
|
||||||
model_info = cb(WeightsFileHandler.CallbackType.load, model_info)
|
model_info = cb(WeightsFileHandler.CallbackType.load, model_info)
|
||||||
@ -252,7 +252,7 @@ class WeightsFileHandler(object):
|
|||||||
|
|
||||||
model_info.model = trains_in_model
|
model_info.model = trains_in_model
|
||||||
# call post model callback functions
|
# call post model callback functions
|
||||||
for cb in WeightsFileHandler._model_post_callbacks.values():
|
for cb in list(WeightsFileHandler._model_post_callbacks.values()):
|
||||||
# noinspection PyBroadException
|
# noinspection PyBroadException
|
||||||
try:
|
try:
|
||||||
model_info = cb(WeightsFileHandler.CallbackType.load, model_info)
|
model_info = cb(WeightsFileHandler.CallbackType.load, model_info)
|
||||||
@ -364,7 +364,7 @@ class WeightsFileHandler(object):
|
|||||||
|
|
||||||
# call pre model callback functions
|
# call pre model callback functions
|
||||||
model_info.upload_filename = target_filename
|
model_info.upload_filename = target_filename
|
||||||
for cb in WeightsFileHandler._model_pre_callbacks.values():
|
for cb in list(WeightsFileHandler._model_pre_callbacks.values()):
|
||||||
# noinspection PyBroadException
|
# noinspection PyBroadException
|
||||||
try:
|
try:
|
||||||
model_info = cb(WeightsFileHandler.CallbackType.save, model_info)
|
model_info = cb(WeightsFileHandler.CallbackType.save, model_info)
|
||||||
@ -424,7 +424,7 @@ class WeightsFileHandler(object):
|
|||||||
|
|
||||||
model_info.model = trains_out_model
|
model_info.model = trains_out_model
|
||||||
# call post model callback functions
|
# call post model callback functions
|
||||||
for cb in WeightsFileHandler._model_post_callbacks.values():
|
for cb in list(WeightsFileHandler._model_post_callbacks.values()):
|
||||||
# noinspection PyBroadException
|
# noinspection PyBroadException
|
||||||
try:
|
try:
|
||||||
model_info = cb(WeightsFileHandler.CallbackType.save, model_info)
|
model_info = cb(WeightsFileHandler.CallbackType.save, model_info)
|
||||||
|
Loading…
Reference in New Issue
Block a user