Skip to content

Commit 99f57bc

Browse files
committed
[kernel] rtthread.h 增加#ifdef RT_USING_HEAP 预编译
1 parent 06927af commit 99f57bc

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

include/rtthread.h

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,11 @@ void rt_object_init(struct rt_object *object,
4848
enum rt_object_class_type type,
4949
const char *name);
5050
void rt_object_detach(rt_object_t object);
51+
#ifdef RT_USING_HEAP
5152
rt_object_t rt_object_allocate(enum rt_object_class_type type,
5253
const char *name);
5354
void rt_object_delete(rt_object_t object);
55+
#endif
5456
rt_bool_t rt_object_is_systemobject(rt_object_t object);
5557
rt_uint8_t rt_object_get_type(rt_object_t object);
5658
rt_object_t rt_object_find(const char *name, rt_uint8_t type);
@@ -90,12 +92,14 @@ void rt_timer_init(rt_timer_t timer,
9092
rt_tick_t time,
9193
rt_uint8_t flag);
9294
rt_err_t rt_timer_detach(rt_timer_t timer);
95+
#ifdef RT_USING_HEAP
9396
rt_timer_t rt_timer_create(const char *name,
9497
void (*timeout)(void *parameter),
9598
void *parameter,
9699
rt_tick_t time,
97100
rt_uint8_t flag);
98101
rt_err_t rt_timer_delete(rt_timer_t timer);
102+
#endif
99103
rt_err_t rt_timer_start(rt_timer_t timer);
100104
rt_err_t rt_timer_stop(rt_timer_t timer);
101105
rt_err_t rt_timer_control(rt_timer_t timer, int cmd, void *arg);
@@ -128,24 +132,26 @@ rt_err_t rt_thread_init(struct rt_thread *thread,
128132
rt_uint8_t priority,
129133
rt_uint32_t tick);
130134
rt_err_t rt_thread_detach(rt_thread_t thread);
135+
#ifdef RT_USING_HEAP
131136
rt_thread_t rt_thread_create(const char *name,
132137
void (*entry)(void *parameter),
133138
void *parameter,
134139
rt_uint32_t stack_size,
135140
rt_uint8_t priority,
136141
rt_uint32_t tick);
142+
rt_err_t rt_thread_delete(rt_thread_t thread);
143+
#endif
137144
rt_thread_t rt_thread_self(void);
138145
rt_thread_t rt_thread_find(char *name);
139146
rt_err_t rt_thread_startup(rt_thread_t thread);
140-
rt_err_t rt_thread_delete(rt_thread_t thread);
141-
142147
rt_err_t rt_thread_yield(void);
143148
rt_err_t rt_thread_delay(rt_tick_t tick);
144149
rt_err_t rt_thread_delay_until(rt_tick_t *tick, rt_tick_t inc_tick);
145150
rt_err_t rt_thread_mdelay(rt_int32_t ms);
146151
rt_err_t rt_thread_control(rt_thread_t thread, int cmd, void *arg);
147152
rt_err_t rt_thread_suspend(rt_thread_t thread);
148153
rt_err_t rt_thread_resume(rt_thread_t thread);
154+
void rt_thread_exit(void);
149155
void rt_thread_timeout(void *parameter);
150156

151157
#ifdef RT_USING_SIGNALS
@@ -228,10 +234,12 @@ rt_err_t rt_mp_init(struct rt_mempool *mp,
228234
rt_size_t size,
229235
rt_size_t block_size);
230236
rt_err_t rt_mp_detach(struct rt_mempool *mp);
237+
#ifdef RT_USING_HEAP
231238
rt_mp_t rt_mp_create(const char *name,
232239
rt_size_t block_count,
233240
rt_size_t block_size);
234241
rt_err_t rt_mp_delete(rt_mp_t mp);
242+
#endif
235243

236244
void *rt_mp_alloc(rt_mp_t mp, rt_int32_t time);
237245
void rt_mp_free(void *block);
@@ -303,8 +311,10 @@ rt_err_t rt_sem_init(rt_sem_t sem,
303311
rt_uint32_t value,
304312
rt_uint8_t flag);
305313
rt_err_t rt_sem_detach(rt_sem_t sem);
314+
#ifdef RT_USING_HEAP
306315
rt_sem_t rt_sem_create(const char *name, rt_uint32_t value, rt_uint8_t flag);
307316
rt_err_t rt_sem_delete(rt_sem_t sem);
317+
#endif
308318

309319
rt_err_t rt_sem_take(rt_sem_t sem, rt_int32_t time);
310320
rt_err_t rt_sem_trytake(rt_sem_t sem);
@@ -318,8 +328,10 @@ rt_err_t rt_sem_control(rt_sem_t sem, int cmd, void *arg);
318328
*/
319329
rt_err_t rt_mutex_init(rt_mutex_t mutex, const char *name, rt_uint8_t flag);
320330
rt_err_t rt_mutex_detach(rt_mutex_t mutex);
331+
#ifdef RT_USING_HEAP
321332
rt_mutex_t rt_mutex_create(const char *name, rt_uint8_t flag);
322333
rt_err_t rt_mutex_delete(rt_mutex_t mutex);
334+
#endif
323335

324336
rt_err_t rt_mutex_take(rt_mutex_t mutex, rt_int32_t time);
325337
rt_err_t rt_mutex_release(rt_mutex_t mutex);
@@ -332,8 +344,10 @@ rt_err_t rt_mutex_control(rt_mutex_t mutex, int cmd, void *arg);
332344
*/
333345
rt_err_t rt_event_init(rt_event_t event, const char *name, rt_uint8_t flag);
334346
rt_err_t rt_event_detach(rt_event_t event);
347+
#ifdef RT_USING_HEAP
335348
rt_event_t rt_event_create(const char *name, rt_uint8_t flag);
336349
rt_err_t rt_event_delete(rt_event_t event);
350+
#endif
337351

338352
rt_err_t rt_event_send(rt_event_t event, rt_uint32_t set);
339353
rt_err_t rt_event_recv(rt_event_t event,
@@ -354,8 +368,10 @@ rt_err_t rt_mb_init(rt_mailbox_t mb,
354368
rt_size_t size,
355369
rt_uint8_t flag);
356370
rt_err_t rt_mb_detach(rt_mailbox_t mb);
371+
#ifdef RT_USING_HEAP
357372
rt_mailbox_t rt_mb_create(const char *name, rt_size_t size, rt_uint8_t flag);
358373
rt_err_t rt_mb_delete(rt_mailbox_t mb);
374+
#endif
359375

360376
rt_err_t rt_mb_send(rt_mailbox_t mb, rt_ubase_t value);
361377
rt_err_t rt_mb_send_wait(rt_mailbox_t mb,
@@ -376,11 +392,13 @@ rt_err_t rt_mq_init(rt_mq_t mq,
376392
rt_size_t pool_size,
377393
rt_uint8_t flag);
378394
rt_err_t rt_mq_detach(rt_mq_t mq);
395+
#ifdef RT_USING_HEAP
379396
rt_mq_t rt_mq_create(const char *name,
380397
rt_size_t msg_size,
381398
rt_size_t max_msgs,
382399
rt_uint8_t flag);
383400
rt_err_t rt_mq_delete(rt_mq_t mq);
401+
#endif
384402

385403
rt_err_t rt_mq_send(rt_mq_t mq, const void *buffer, rt_size_t size);
386404
rt_err_t rt_mq_send_wait(rt_mq_t mq,
@@ -435,8 +453,10 @@ rt_err_t rt_device_register(rt_device_t dev,
435453
rt_uint16_t flags);
436454
rt_err_t rt_device_unregister(rt_device_t dev);
437455

456+
#ifdef RT_USING_HEAP
438457
rt_device_t rt_device_create(int type, int attach_size);
439458
void rt_device_destroy(rt_device_t device);
459+
#endif
440460

441461
rt_err_t
442462
rt_device_set_rx_indicate(rt_device_t dev,

0 commit comments

Comments
 (0)