User:Kernigh: Difference between revisions

From Rosetta Code
Content added Content deleted
m (Add deal cards for FreeCell to list.)
(Add SHA-1. Remove unused code.)
Line 56: Line 56:
** [[Return multiple values]]
** [[Return multiple values]]
** [[Set]]
** [[Set]]
** [[SHA-1]]
** [[Subtractive generator]]
** [[Subtractive generator]]

== In progress ==
<lang c>#include <stdio.h>
#include <stdlib.h>

#if defined(_WIN32)
#include <windows.h>
#include <process.h>

/* ARGSUSED */
unsigned __stdcall
run2(void *arg)
{
printf(" %d\n", rand());
printf(" %d\n", rand());
printf(" %d\n", rand());
return 0;
}

void
run(void)
{
HANDLE thread;
thread = (HANDLE)_beginthreadex(NULL, 0, run2, NULL, 0, NULL);
if (thread) {
WaitForSingleObject(thread, INFINITE);
CloseHandle(thread);
} else
puts("Error!");
}
#elif defined(__unix__)
#include <pthread.h>

/* ARGSUSED */
void *
run2(void *arg)
{
printf(" %d\n", rand());
printf(" %d\n", rand());
printf(" %d\n", rand());
return NULL;
}

void
run(void)
{
pthread_t thread;
if (pthread_create(&thread, NULL, run2, NULL) ||
pthread_join(thread, NULL))
puts("Error!");
}
#else
#error Port run() to your system.
#endif

int
main()
{
srand(42);
puts("Thread A:");
run();
puts("Thread B:");
run();
return 0;
}</lang>

<pre>Thread A:
41
18467
6334
Thread B:
41
18467
6334</pre>

Revision as of 19:17, 1 February 2012

My Favorite Languages
4 is best, 1 is worst.
Languages Proficiency
Ruby 4
C 3
C++ 2
CMake 2
Common Lisp 2
Factor 2*
Java 2
Perl 2
WML 2
PHP 1*
PicoLisp 1*
Python 1
Scala 1*
Unix Classic Tools
UNIX Shell 3
AWK 2
bc 2
dc 2
make 2
m4 1
sed 1
Alternate Shells
C Shell 2
es 1*
Off Platform
AutoHotkey 1*
TI-83 BASIC 1

Language proficiency:

  • 4 I prefer this language.
  • 3 I know much about this language. I can solve many tasks.
  • 2 I know part of this language. I can solve some tasks.
  • 1 I can only use this language for a few simple tasks.
  • * I never used this language until I saw it at Rosetta Code.

Contributions by Kernigh