mirror of
https://github.com/espressif/esp-modbus.git
synced 2025-08-03 12:24:27 +02:00
Merge branch 'bugfix/object_counter_ensure_atomic_operation' into 'main'
object counter ensure atomic operation See merge request idf/esp-modbus!120
This commit is contained in:
@@ -39,16 +39,12 @@ uint32_t mb_port_get_inst_counter()
|
|||||||
|
|
||||||
uint32_t mb_port_get_inst_counter_inc()
|
uint32_t mb_port_get_inst_counter_inc()
|
||||||
{
|
{
|
||||||
uint32_t counter = atomic_load(&inst_counter);
|
return atomic_fetch_add(&inst_counter, 1);
|
||||||
atomic_store(&inst_counter, (counter + 1));
|
|
||||||
return counter;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32_t mb_port_get_inst_counter_dec()
|
uint32_t mb_port_get_inst_counter_dec()
|
||||||
{
|
{
|
||||||
uint32_t counter = atomic_load(&inst_counter);
|
return atomic_fetch_sub(&inst_counter, 1);
|
||||||
atomic_store(&inst_counter, (counter - 1));
|
|
||||||
return counter;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QueueHandle_t queue_create(int queue_size)
|
QueueHandle_t queue_create(int queue_size)
|
||||||
|
Reference in New Issue
Block a user