(self)
| 14 | |
| 15 | class ReqIDGenerator: |
| 16 | def __init__(self): |
| 17 | from lightllm.server.core.objs.atomic_lock import AtomicShmLock |
| 18 | from lightllm.server.core.objs.shm_array import ShmArray |
| 19 | from lightllm.utils.envs_utils import get_unique_server_name, get_env_start_args |
| 20 | |
| 21 | self.args = get_env_start_args() |
| 22 | self.use_config_server = ( |
| 23 | self.args.config_server_host and self.args.config_server_port and self.args.run_mode == "pd_master" |
| 24 | ) |
| 25 | self.current_id = ShmArray(f"{get_unique_server_name()}_req_id_gen", (2,), dtype=np.int64) |
| 26 | self.current_id.create_shm() |
| 27 | self.current_id.arr[0] = 0 |
| 28 | self.current_id.arr[1] = 0 |
| 29 | self.lock = AtomicShmLock(f"{get_unique_server_name()}_req_id_gen_lock") |
| 30 | |
| 31 | def _check_and_set_new_id_range(self): |
| 32 | need_update_range = self.current_id.arr[0] + MAX_BEST_OF >= self.current_id.arr[1] |
nothing calls this directly
no test coverage detected