Pythonでスリープソート書いてたら multiprocessing の最小構成サンプルになった
Pythonなら短く書ける。スリ〜プソ〜トはネタとして面白いが実用性は皆無。
だけど、multiprocessingはガチで実用的なモジュール。(Python2.6以降の標準ライブラリ)
#!/usr/bin/env python from time import sleep from multiprocessing import Pool from random import randint num = 20 def sleep_sort(n): sleep(n) print(n) Pool(num).map( sleep_sort, [randint(1, num) for i in xrange(num)] )
Pool#mapの返り値はそれぞれの実行結果のリストなんだけど、sleep sortでは役に立たないので割愛
常識を覆すソートアルゴリズム!その名も"sleep sort"! - Islands in the byte stream