From 05c8eba11c51ca928eee9c041de1a4192e590aec Mon Sep 17 00:00:00 2001
From: nianjiuhuiyi <64776403+nianjiuhuiyi@users.noreply.github.com>
Date: 星期五, 27 六月 2025 09:57:45 +0800
Subject: [PATCH] Fix: 修复c++后端服务因为空数组的异常退出,以及c++的http服务在收到Ctrl+C信号后无法正常退出 (#2571)
---
funasr/register.py | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/funasr/register.py b/funasr/register.py
index 9a04ef2..a8b1fd3 100644
--- a/funasr/register.py
+++ b/funasr/register.py
@@ -3,9 +3,11 @@
from dataclasses import dataclass
import re
+
@dataclass
class RegisterTables:
"""Registry system for classes."""
+
model_classes = {}
frontend_classes = {}
specaug_classes = {}
@@ -46,16 +48,19 @@
def register(self, register_tables_key: str, key: str = None) -> callable:
"""Decorator to register a class."""
+
def decorator(target_class):
if not hasattr(self, register_tables_key):
setattr(self, register_tables_key, {})
- logging.info(f"New registry table added: {register_tables_key}")
+ logging.debug(f"New registry table added: {register_tables_key}")
registry = getattr(self, register_tables_key)
registry_key = key if key is not None else target_class.__name__
if registry_key in registry:
- raise ValueError(f"Key {registry_key} already exists in {register_tables_key}")
+ logging.debug(
+ f"Key {registry_key} already exists in {register_tables_key}, re-register"
+ )
registry[registry_key] = target_class
@@ -78,4 +83,5 @@
return decorator
+
tables = RegisterTables()
--
Gitblit v1.9.1