ERLANG mnesia:create_table/2问题

我测试发现mnesia:create_table()有这样几个特点。

 

example1:

 

Tabdef = [{type, ordered_set}, {attributes, record_info(fields, signals)}].

mnesia:create_table(signals, Tabdef).

 

example2:

Tabdef = [{type, set}, {attributes, record_info(fields, signals)}].

mnesia:create_table(signals, Tabdef).

 

结论:

 

1. 如果用ORDERED_SET类型表,那么后面的插入行语句会出错,提示表不存在,必须在后面加上以下语句: mnesia:wait_for_tables([signals],5000).

这说明该函数是异步的。

 

2. 用SET类型表没有这个问题,说明SET类型表的操作效率比ORDERED_SET更高。

你可能感兴趣的:(erlang)