Files
doris/be/src/exec
Yingchun Lai b780df697a [refactor] Optimize threads usage mode in BE (#4440)
BE can not graceful exit because some threads are running in endless
loop. This patch do the following optimization:
- Use the well encapsulated Thread and ThreadPool instead of std::thread
  and std::vector<std::thread>
- Use CountDownLatch in thread's loop condition to avoid endless loop
- Introduce a new class Daemon for daemon works, like tcmalloc_gc,
  memory_maintenance and calculate_metrics
- Decouple statistics type TaskWorkerPool and StorageEngine notification
  by submit tasks to TaskWorkerPool's queue
- Reorder objects' stop and deconstruct in main(), i.e. stop network
  services at first, then internal services
- Use libevent in pthreads mode, by calling evthread_use_pthreads(),
  then EvHttpServer can exit gracefully in multi-threads
- Call brpc::Server's Stop() and ClearServices() explicitly
2020-09-06 20:19:14 +08:00
..
2019-06-14 23:38:31 +08:00
2019-06-14 23:38:31 +08:00
2020-02-20 23:47:02 +08:00
2019-06-14 23:38:31 +08:00
2019-06-14 23:38:31 +08:00
2019-06-14 23:38:31 +08:00
2019-06-14 23:38:31 +08:00
2019-06-14 23:38:31 +08:00
2018-11-15 16:17:23 +08:00
2019-06-14 23:38:31 +08:00