[每当我尝试创建对象(队列,线程或字节池)时,我只能通过动态内存分配来创建它们;如果我尝试静态内存分配,它将失败。
我无法在文档的任何地方找到txm_module_object_allocate
API。
//Works:
TX_BYTE_POOL* my_byte_pool=NULL;
txm_module_object_allocate(&my_byte_pool, sizeof(TX_BYTE_POOL));
tx_byte_pool_create(my_byte_pool, "Task Pool", free_memory_task, 16*1240);
//Fails:
TX_BYTE_POOL my_byte_pool;
tx_byte_pool_create(&my_byte_pool, "Task Pool", free_memory_task, 16*1240);
在第二种情况下,我总是收到tx_byte_pool_create
失败的错误。
[是,txm_module_object_allocate期望第一个参数是类型TX_BYTE_POOL的指针。因此,正确的语法或要调用的函数是txm_module_object_allocate(&my_byte_pool,sizeof(TX_BYTE_POOL));