Lines Matching defs:gid
38 bool IsValidTimeout(uint64_t gid, uint64_t timeout_ms)
42 FFRT_LOGI("task gid=%llu with timeout [%llu ms] is valid", gid, timeout_ms);
45 FFRT_LOGE("task gid=%llu with timeout [%llu ms] is invalid", gid, timeout_ms);
50 void AddTaskToWatchdog(uint64_t gid)
53 taskStatusMap.insert(std::make_pair(gid, SEND_COUNT_MIN));
56 void RemoveTaskFromWatchdog(uint64_t gid)
59 taskStatusMap.erase(gid);
62 bool SendTimeoutWatchdog(uint64_t gid, uint64_t timeout, uint64_t delay)
65 FFRT_LOGI("start to set watchdog for task gid=%llu with timeout [%llu ms] ", gid, timeout);
69 we->cb = ([gid, timeout](WaitEntry* we) {
71 if (taskStatusMap.count(gid) > 0) {
72 RunTimeOutCallback(gid, timeout);
74 FFRT_LOGI("task gid=%llu has finished", gid);
84 FFRT_LOGE("failed to set watchdog for task gid=%llu with timeout [%llu ms] ", gid, timeout);
91 void RunTimeOutCallback(uint64_t gid, uint64_t timeout)
95 ss << "parallel task gid=" << gid << " execution time exceeds " << timeout << " ms";
100 func(gid, msg.c_str(), msg.size());
102 int sendCount = taskStatusMap[gid];
104 FFRT_LOGE("parallel task gid=%llu send watchdog delaywork failed, the count more than the max count", gid);
107 if (!SendTimeoutWatchdog(gid, timeout, 0)) {
108 FFRT_LOGE("parallel task gid=%llu send next watchdog delaywork failed", gid);
111 taskStatusMap[gid] = (++sendCount);