예제 #1
0
int main()
{
	init_random();

	m_buffer_t rb(64);
	constexpr std::size_t n_readers = 2;
	m_reader_t rd[n_readers] = { rb, rb };
	rb.mlock();

	constexpr std::size_t max = 10000;
	std::vector<m_type> random_numbers(max + 1);
	for(std::size_t count = 0; count < max; ++count)
	{
		random_numbers[count] = random_number(rb.maximum_eventual_write_space() - 1) + 1;
	}
	random_numbers[max] = 0;

	try
	{
		std::thread t1(write_messages, &rb, random_numbers);
		std::thread t2(read_messages, rd);
		std::thread t3(read_messages, rd + 1);
		t1.join(); t2.join(); t3.join();
	}
	catch(const char* s)
	{
		std::cerr << s << std::endl;
		return 1;
	}

	return 0;
}
예제 #2
0
std::vector<float> uniform(int N)
{
	// uniform distribution in [0, 1)
	std::uniform_real_distribution<> uniform_dis;

	std::vector<float> random_numbers(N);
	for (int i = 0; i < N; i++)
		random_numbers[i] = uniform_dis(gen);

	return random_numbers;
}
예제 #3
0
파일: app.cpp 프로젝트: ehom/learning
void milestone3() {
  std::cout << "*** MILESTONE 3" << std::endl;

  std::vector<int> numbers = random_numbers(20);
  std::vector<int> unsorted(numbers);

  BubbleSort(numbers);

  std::cout << "-->List of Random Numbers:" << std::endl; 
  print_vector(unsorted);
  std::cout << "-->SORTED:" << std::endl; 
  print_vector(numbers);
}
예제 #4
0
static void MainL()
	{
	TheTest.Start(_L(" @SYMTestCaseID:SYSLIB-STDLIB-LEGACY-TMISC-0001 TMISC tests "));

	random_numbers();
	sorting();
	searching();
	setjmp_longjmp();
	casecmp();
	sscanf_test();

	int argsc = 5;
	char *argsv[]=
		{
		"tmisc", "This", "is", "a", "test.",
		};
	arguments(argsc, argsv);

	strtod_test();
	va_args_test();
	sprintf_test();
	}