- const int event_good_array[3] = {EVENT8,EVENT12,EVENT4};
-
const int event_bad_array[3] = {EVENT1,EVENT16,EVENT9};
- ...........
for(i = 0;i
{
event = event_bad_array[rand()%3]; test_switch(event);
}
我们推测,每次随机从好数组选择事件号执行的速度要优于每次从差数组里面选择事件号。做了一组实验,证明的确如此。- 100000000 times of switch cost 8108847 us
-
100000000 times of switch cost 8109346 us
-
100000000 times of switch cost 8113334 us
-
100000000 times of switch cost 8101369 us
-
100000000 times of switch cost 8107485 us
-
-
- ------------------------------------------------
-
100000000 times of switch cost 7871112 us
-
100000000 times of switch cost 7862668 us
-
100000000 times of switch cost 7858855 us
-
100000000 times of switch cost 8033684 us
-
100000000 times of switch cost 7858253 us
本文用实验证明了 按照概率的大小安排switch 语句中的case是没有道理的,起码对于非连续的事件号,是没有道理的。
阅读(3248) | 评论(3) | 转发(0) |