From 2f1cc7ae608aa7c75506ea3e1647e1705e0c8976 Mon Sep 17 00:00:00 2001 From: dapan1121 Date: Sat, 2 Jul 2022 19:55:33 +0800 Subject: [PATCH] enh: refactor scheduler code --- source/libs/scheduler/src/schStatus.c | 4 ++++ source/libs/scheduler/src/scheduler.c | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/source/libs/scheduler/src/schStatus.c b/source/libs/scheduler/src/schStatus.c index a8cac993cf..1e5be8c3de 100644 --- a/source/libs/scheduler/src/schStatus.c +++ b/source/libs/scheduler/src/schStatus.c @@ -41,6 +41,10 @@ SSchStatusFps gSchTaskFps[JOB_TASK_STATUS_MAX] = { {JOB_TASK_STATUS_DROP, schTaskStatusNullEnter, schTaskStatusNullLeave, schTaskStatusNullEvent}, }; +int32_t schSwitchJobStatus(int32_t status, SSchJob* pJob, void* pParam) { + schJobStatusEnter(pJob, status, pParam); +} + diff --git a/source/libs/scheduler/src/scheduler.c b/source/libs/scheduler/src/scheduler.c index cbc6a1c17a..3f797f6c7e 100644 --- a/source/libs/scheduler/src/scheduler.c +++ b/source/libs/scheduler/src/scheduler.c @@ -75,6 +75,14 @@ int32_t schedulerExecJob(SSchedulerReq *pReq, int64_t *pJobId) { SCH_ERR_RET(schJobStatusEnter(&pJob, JOB_TASK_STATUS_INIT, pReq)); + SSchEvent event = {0}; + event.event = SCH_EVENT_BEGIN_OP; + SSchOpEvent opEvent = {0}; + opEvent.type = SCH_OP_EXEC; + opEvent.begin = true; + opEvent.pReq = pReq; + schJobHandleEvent(pJob, &event); + SCH_ERR_RET(schJobStatusEnter(&pJob, JOB_TASK_STATUS_EXEC, pReq)); *pJobId = pJob->refId;