41 lines
779 B
C
41 lines
779 B
C
/*
|
|
* ne_monitor.h -- provide iot-system thread protect operation interface.
|
|
*
|
|
*
|
|
* ORIGINAL AUTHOR:
|
|
*
|
|
* Copyright (c) 2018 Netease Corporation
|
|
*/
|
|
|
|
#ifndef NE_MONITOR_H
|
|
#define NE_MONITOR_H
|
|
|
|
|
|
#include "c_types.h"
|
|
|
|
|
|
#define NE_THREAD_MONITOR_CTX &ne_thread_monitor
|
|
#define NE_THREAD_MONITOR_MAX 10
|
|
#define NE_THREAD_MONITOR_NAME_LEN 15
|
|
|
|
typedef struct {
|
|
int8 name[NE_THREAD_MONITOR_NAME_LEN + 1];
|
|
int32 (*is_sick) (uint32 cmsec);
|
|
uint32 check_interval; //unit- s
|
|
uint32 lmsec; //unit- ms
|
|
uint8 is_valid;
|
|
}ne_thread_handle_t;
|
|
|
|
|
|
typedef struct {
|
|
ne_thread_handle_t thread_handle[NE_THREAD_MONITOR_MAX];
|
|
void *sema;
|
|
uint8 init_flag;
|
|
uint8 start_flag;
|
|
uint8 run_flag;
|
|
}ne_thread_monitor_t;
|
|
|
|
|
|
|
|
#endif
|