main.cpp 1014 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include "CarLinkPlayer.h"
  2. #include <signal.h>
  3. #include <unistd.h>
  4. bool gRunning = false;
  5. CarLinkPlayer* gLink;
  6. static void signal_handler(int sig) {
  7. switch (sig) {
  8. case SIGINT:
  9. case SIGTERM:
  10. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  11. gRunning = false;
  12. break;
  13. }
  14. }
  15. static void init_signals(void) {
  16. struct sigaction sigact;
  17. sigact.sa_handler = signal_handler;
  18. sigemptyset(&sigact.sa_mask);
  19. sigact.sa_flags = 0;
  20. sigaction(SIGINT, &sigact, NULL);
  21. sigaction(SIGTERM, &sigact, NULL);
  22. }
  23. int main(void)
  24. {
  25. init_signals();
  26. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  27. gLink = new CarLinkPlayer();
  28. gLink->initialize();
  29. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  30. gRunning = true;
  31. while (gRunning) {
  32. sleep(1);
  33. }
  34. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  35. delete gLink;
  36. printf("%s:%s:%d process exited\r\n",__FILE__,__func__,__LINE__);
  37. return 0;
  38. }