void task(void *params){
  while(1){
    delay(100);
  }
}

void setup() {
  Serial.begin(115200);
  Serial.println("Hello, ESP32-S3!");
  TaskHandle_t t;
  int heapSize = ESP.getHeapSize();   // 获得现有内存大小
  printf("ESP32 总内存大小:%dbyte\n", heapSize);
  int before = ESP.getFreeHeap();     // 创建任务之前剩余内存大小
  xTaskCreate(task, "TASK", 1024, NULL, 1, &t);
  int after = ESP.getFreeHeap();     // 创建任务之前剩余内存大小
  printf("创建任务前剩余内存大小:%dbyte, 创建任务之后剩余内存大小:%dbyte,使用了:%dbyte\n",before, after, (before-after));
  printf("TCB 控制块大小:%dbyte\n", sizeof(StaticTask_t));
  printf("新创建后内存剩余:%dbyte\n", uxTaskGetStackHighWaterMark(t));
  vTaskDelete(NULL);
}

void loop() {
}