task
Task management bindings for ESP32 FreeRTOS Provides functions to create and manage tasks on different CPU cores
- AssemblyScript
- Zig
- Rust
- TinyGo
- C
- C++
export enum TaskPriority {
Idle = 0,
Low = 1,
Normal = 2,
High = 3,
Critical = 4
}
export enum CpuCore {
Core0 = 0,
Core1 = 1,
AnyCore = 2
}
// @ts-ignore
@external("task", "task_delete")
export declare function taskDelete(taskHandle: u32): void;
pub const TaskPriority = enum(u32) {
idle = 0,
low = 1,
normal = 2,
high = 3,
critical = 4
};
pub const CpuCore = enum(u32) {
core0 = 0,
core1 = 1,
anyCore = 2
};
pub extern "task" fn task_delete(task_handle: u32) void;
#[derive(Debug, Clone, Copy)]
#[repr(u32)]
pub enum TaskPriority {
Idle = 0,
Low = 1,
Normal = 2,
High = 3,
Critical = 4
}
#[derive(Debug, Clone, Copy)]
#[repr(u32)]
pub enum CpuCore {
Core0 = 0,
Core1 = 1,
AnyCore = 2
}
#[link(wasm_import_module = "task")]
extern "C" {
#[link_name = "task_delete"]
fn unsafe_task_delete(task_handle: u32);
}
pub fn task_delete(task_handle: u32) {
unsafe {
unsafe_task_delete(task_handle);
}
}
package task
type TaskPriority uint32
const (
Idle TaskPriority = 0
Low TaskPriority = 1
Normal TaskPriority = 2
High TaskPriority = 3
Critical TaskPriority = 4
)
type CpuCore uint32
const (
Core0 CpuCore = 0
Core1 CpuCore = 1
AnyCore CpuCore = 2
)
//go:wasmimport task task_delete
func TaskDelete(TaskHandle uint32);
typedef enum {
TASK_PRIORITY_IDLE,
TASK_PRIORITY_LOW,
TASK_PRIORITY_NORMAL,
TASK_PRIORITY_HIGH,
TASK_PRIORITY_CRITICAL
} task_priority_t;
typedef enum {
CPU_CORE_CORE0,
CPU_CORE_CORE1,
CPU_CORE_ANY_CORE
} cpu_core_t;
__attribute__((import_module("task")))
__attribute__((import_name("task_delete")))
extern void task_delete(unsigned int task_handle);
typedef enum {
TASK_PRIORITY_IDLE,
TASK_PRIORITY_LOW,
TASK_PRIORITY_NORMAL,
TASK_PRIORITY_HIGH,
TASK_PRIORITY_CRITICAL
} task_priority_t;
typedef enum {
CPU_CORE_CORE0,
CPU_CORE_CORE1,
CPU_CORE_ANY_CORE
} cpu_core_t;
extern "C" {
__attribute__((import_module("task")))
__attribute__((import_name("task_delete")))
extern void task_delete(unsigned int task_handle);
}