pthread_key_create() は、正常終了時に 0 を返します。それ以外の戻り値は、エラーが発生したことを示します。以下のいずれかの条件が検出されると pthread_key_create() は失敗し、次の値を戻します。
EAGAIN
キーの名前空間が使い果たされました。
ENOMEM
仮想記憶が足りないので、新しいキーを作成できません。