fyf_thread.h
上传用户:sunhongbo
上传日期:2022-01-25
资源大小:3010k
文件大小:4k
源码类别:

数据库系统

开发平台:

C/C++

  1. /******************************************************************************/
  2. /*    Copyright (c) 2008 Embedded Internet Solutions, Inc                     */
  3. /*    All rights reserved. You are not allowed to copy or distribute          */
  4. /*    the code without permission.                                            */
  5. /*    This is the demo implenment of the Porting APIs needed by            */
  6. /*    MiddleWare.                                                             */
  7. /*    Maybe you should modify it accorrding to Platform.                      */
  8. /*                                                                            */
  9. /*    $author szhy 2008/07/03                                              */
  10. /******************************************************************************/ 
  11. #ifndef __FYF_THREAD_H__
  12. #define __FYF_THREAD_H__
  13. typedef void (*FYF_THREAD_PROC)(void * param);
  14. typedef struct 
  15. BU32 (*FYF_CPI_thread_create)(const PU08 name,FYF_THREAD_PROC func,void * 
  16. param,BS32 priority,BS32 stack_size); 
  17. BS32 (*FYF_CPI_thread_destroy)(BU32 handle); 
  18. void (*FYF_CPI_thread_sleep)(BS32 ms); 
  19. BU32 (*FYF_CPI_thread_getCurID)(void);
  20. }FYF_THREAD_PORTING;
  21. /******************************************************************************/
  22. /*Description: register thread                                                */
  23. /*Input      : porting   */
  24. /*Output     : no                                                             */
  25. /*Return     : no                                           */
  26. /******************************************************************************/
  27. void FYF_API_thread_register(FYF_THREAD_PORTING *porting);
  28. /******************************************************************************/
  29. /*Description: create thread                                                  */
  30. /*Input      : thread name thread process function, function parameter,       */
  31. /*             priority, stack size, arg1, arg2                               */
  32. /*Output     : no                                                             */
  33. /*Return     : >0 success, 0 failure                                          */
  34. /******************************************************************************/
  35. BU32 FYF_API_thread_create(const PU08 name,FYF_THREAD_PROC func,void * param,BS32 priority,BS32 stack_size);
  36. /******************************************************************************/
  37. /*Description: destroy thread                                                 */
  38. /*Input      : thread handle                                                  */
  39. /*Output     : no                                                             */
  40. /*Return     : 0 success, -1 failure                                          */
  41. /******************************************************************************/
  42. BS32 FYF_API_thread_destroy(BU32 handle);
  43. /******************************************************************************/
  44. /*Description: thread  sleep                                                  */
  45. /*Input      : the time of thread to sleep                                    */
  46. /*Output     : no                                                             */
  47. /*Return     : no                                                             */
  48. /******************************************************************************/
  49. void FYF_API_thread_sleep(BS32 ms);
  50. /******************************************************************************/
  51. /*Description: get cur thread  id                                                 */
  52. /*Input      :                                     */
  53. /*Output     : no                                                             */
  54. /*Return     : no                                                             */
  55. /******************************************************************************/
  56. BU32 FYF_API_thread_getCurID(void);
  57. #endif