int main(int argc, char const *argv[]) { if ( argc > 1 ) { if ( 0 == strcmp( "stack", argv[1] ) ) { stack_test( atoi( argv[2] ) ); } else { queue_test( atoi( argv[2] ) ); } } return 0; }
int main() { queue_test(); PriorityThreadPool pool; std::cout << "start matrix test" << std::endl; srand(time(NULL)); const int size = 1000; Matrix m1(size), m2(size), m3(size); std::vector<Future<void>> futures; std::cout << "begin fill" << std::endl; m1.fill(); m2.fill(); std::cout << "end fill" << std::endl; auto f = [&](size_t row) { for (size_t column = 0; column < size; ++column) { for (size_t elem = 0; elem < size; ++elem) { m3.at(row, column) += m1.at(row, elem) * m2.at(elem, column); } } }; auto begin = std::chrono::high_resolution_clock::now(); for (size_t index = 0; index < size; ++index) { futures.push_back(pool.runAsync(std::bind(f, index))); } std::for_each(futures.begin(), futures.end(), std::mem_fn(&Future<void>::get)); auto end = std::chrono::high_resolution_clock::now(); auto tm = std::chrono::duration_cast<std::chrono::duration<double>>(end - begin); std::cout << tm.count() << std::endl; return 0; }
void part_two_describe() { cout<<"******************************************"<<endl; cout<<"* 第二章 C++ STL泛型编程 *"<<endl; cout<<"******************************************"<<endl; cout<<"*(1) 一个简单的测试案例 *"<<endl; cout<<"*(2) vector向量容器 *"<<endl; cout<<"*(3) string基本字符系列容器 *"<<endl; cout<<"*(4) set集合容器 *"<<endl; cout<<"*(5) mutiset多种集合容器 *"<<endl; cout<<"*(6) map映照容器 *"<<endl; cout<<"*(7) mutimap多重映照容器 *"<<endl; cout<<"*(8) deque双端队列容器 *"<<endl; cout<<"*(9) list双向链表容器 *"<<endl; cout<<"*(10)bitset位集合容器 *"<<endl; cout<<"*(11)stack堆栈容器 *"<<endl; cout<<"*(12)queue队列容器 *"<<endl; cout<<"*(13)priority_queue优先队列容器 *"<<endl; cout<<"******************************************"<<endl; cout<<"请输入对应的编号进入相应的题目(返回上级输入0):"<<endl; int num; cin>>num; while(num!=0&&num!=1&&num!=2&&num!=3&&num!=4&&num!=5&&num!=6&&num!=7&&num!=8&&num!=9&&num!=10&&num!=11&&num!=12&&num!=13){ cout<<"编号不存在"<<endl; cout<<"请输入对应的编号进入相应的题目(返回上级输入0):"<<endl; cin>>num; } switch(num){ case 0:total_describe();break; case 1:test();break; case 2:vector_test();break; case 3:string_test();break; case 4:set_test();break; case 5:multiset_test();break; case 6:map_test();break; case 7:multimap_test();break; case 8:deque_test();break; case 9:list_test();break; case 10:bitset_test();break; case 11:stack_test();break; case 12:queue_test();break; case 13:priority_queue_test();break; } }
/** * * @brief Perform all selected benchmarks * see config.h to select or to unselect * * @return N/A */ void BenchTask(void) { int autorun = 0, continuously = 0; init_output(&continuously, &autorun); bench_test_init(); PRINT_STRING(newline, output_file); do { PRINT_STRING(dashline, output_file); PRINT_STRING("| S I M P L E S E R V I C E " "M E A S U R E M E N T S | nsec |\n", output_file); PRINT_STRING(dashline, output_file); task_start(RECVTASK); call_test(); queue_test(); sema_test(); mutex_test(); memorymap_test(); mempool_test(); event_test(); mailbox_test(); pipe_test(); PRINT_STRING("| END OF TESTS " " |\n", output_file); PRINT_STRING(dashline, output_file); PRINT_STRING("PROJECT EXECUTION SUCCESSFUL\n",output_file); } while (continuously && !kbhit()); WAIT_FOR_USER(); if (autorun) { task_sleep(SECONDS(2)); } output_close(); }
rtems_task Test_task ( rtems_task_argument argument ) { benchmark_timer_initialize(); rtems_message_queue_create( 1, OPERATION_COUNT, MESSAGE_SIZE, RTEMS_DEFAULT_ATTRIBUTES, &Queue_id ); end_time = benchmark_timer_read(); put_time( "rtems_message_queue_create: only case", end_time, 1, 0, CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE ); queue_test(); benchmark_timer_initialize(); rtems_message_queue_delete( Queue_id ); end_time = benchmark_timer_read(); put_time( "rtems_message_queue_delete: only case", end_time, 1, 0, CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE ); TEST_END(); rtems_test_exit( 0 ); }
int main(int argc, char *argv[]) { queue_test(); return 0; }