GUID в приложении C ++ для Linux GCC - PullRequest
       27

GUID в приложении C ++ для Linux GCC

7 голосов
/ 30 сентября 2008

У меня есть группа серверов, на которых работает это приложение для Linux. Я хотел бы, чтобы они могли генерировать GUID с низкой вероятностью столкновения. Я уверен, что мог бы просто извлечь 128 байтов из / dev / urandom, и это, вероятно, было бы хорошо, но есть ли простой и легкий способ генерировать GUID, который более эквивалентен Win32? В частности, тот, который учитывает пространство (ну, MAC-адрес), время и случайность? Я не хочу отменять это, я просто хочу что-то вроде CreateGuid ()

Ответы [ 5 ]

10 голосов
/ 30 сентября 2008

В этом Internet Draft подробно описывается один тип UUID, и я с большим успехом использовал подобный подход, когда мне требовалась реализация UUID, и я не мог связываться с существующей библиотекой по архитектурным причинам.

Эта статья дает хороший обзор.

8 голосов
/ 30 сентября 2008

Существует libuuid .

2 голосов
/ 30 сентября 2008

Если вы собираетесь что-то использовать, то интернет-стандарт будет хорошей идеей: Проверьте RFC (запрос на комментарий).

Я знаю, что для GUID характерно следующее: RFC 4122

2 голосов
/ 30 сентября 2008

Смотрите здесь: Путеводитель за кулисами

P.S. Это , а не дублирующий вопрос - лучший ответ будет указывать на общедоступный источник.

0 голосов
/ 30 сентября 2008
...