Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Генерацыя уникальной последовательности

40K
29 июля 2008 года
Kasilyas
3 / / 29.07.2008
Привет народ! Проблемка такая: Прога создает заказ. Заказ отображаетсо в гриде. Нужен алгоритм, идея, а ешо лучше пример в коде, чтобы сгенерировать уникальный номер заказа.
У меня идея такая: Прога написана под КПК, потому я достаю уникальный номер КПК. К нему хочу дописать число из последовательности. Вот именно ету последовательность и нужно. Чтобы при следующим входе в програму следующий елемент последовательности отличался от предыдущих. Может есть идеи как ето организовать.
Можно также генерировать уникальное число, но я видел только алгоритм, который гарантирует до 50 000 уникальных номеров. но кпк выдержыт только 10 000 записей в БД (могу и ошыбатсо), и после 5-й синхронизацыи исчерпаютсо уникальные числа))
СПС за внимание :)
5
29 июля 2008 года
hardcase
4.5K / / 09.08.2005
Цитата: Kasilyas
Нужен алгоритм, идея, а ешо лучше пример в коде, чтобы сгенерировать уникальный номер заказа.

Все давно уже придумано - System.Guid.

 
Код:
Guid unique_id = Guid.NewGuid();

И хоть попой кушать их...
40K
29 июля 2008 года
Kasilyas
3 / / 29.07.2008
Цитата: hardcase
Все давно уже придумано - GUID.


Спс!!! Щас почитаем :)

14
29 июля 2008 года
Phodopus
3.3K / / 19.06.2008
Ага, еще есть i++ с сохранением/восстановлением при запуске/выходе :D
5
29 июля 2008 года
hardcase
4.5K / / 09.08.2005
Цитата: Phodopus
Ага, еще есть i++ с сохранением/восстановлением при запуске/выходе :D

А теперь представим что у нас две программы работают параллельно....

40K
29 июля 2008 года
Kasilyas
3 / / 29.07.2008
Продолжаем... Продолжаем... :) тока чтобы простой смертный вас понял)))
14
30 июля 2008 года
Phodopus
3.3K / / 19.06.2008
Цитата: hardcase
А теперь представим что у нас две программы работают параллельно....



Ну синхронизация, само собой :) Просто может для данной задачи и такого способа будет достаточно

5
30 июля 2008 года
hardcase
4.5K / / 09.08.2005
Цитата: Phodopus
Ну синхронизация, само собой :) Просто может для данной задачи и такого способа будет достаточно


Я имел в виду на разных устройствах. Тем более появляется проблема сохранения значения: а вдруг аппаратный сбой, разряд аккумулятора? И тютю - не сохранился наш регистр i. Хотя все может быть прозаичнее - процессу просто нельзя писать/читать файл с состоянием, или этот файл вообще враги потерли. Мне продолжить? :D

Строку с генерированием гуида видел? ЧТО может быть еще проще в .NET?

14
30 июля 2008 года
Phodopus
3.3K / / 19.06.2008
Цитата: hardcase
Я имел в виду на разных устройствах. Тем более появляется проблема сохранения значения: а вдруг аппаратный сбой, разряд аккумулятора? И тютю - не сохранился наш регистр i. Хотя все может быть прозаичнее - процессу просто нельзя писать/читать файл с состоянием, или этот файл вообще враги потерли. Мне продолжить? :D

Строку с генерированием гуида видел? ЧТО может быть еще проще в .NET?



Ну я-то в задаче ничего не видел про разные устройства. Строку с GUID-ом узрел - и правда просто. Я-то привык к Unmanaged CoCreateGUID() - тоже не сложно. Но только в задаче ничего не сказано про степень уникальности. Кстати GUID создастся настолько уникальным что номер КПК к нему приписывать нет смысла, а номер КПК+i можно использовать для уникальности на разных устройствах (функция выдающая номера синхронизирована и сохраняет их перед выдачей - в случае паралельного исполнения процессов требующих элемент)

20K
11 августа 2008 года
Camarada
44 / / 08.07.2007
Можно придумать много методов изврата, но зачем? ГУИД по-моему зависит от времени до наносекунды (и не только от времени), совпадения невозможны.

Вопрос у меня в другом. Какого, простите, хрена эта и многие другие темы делают в разделе WinForms. Создателю темы -1.
5
11 августа 2008 года
hardcase
4.5K / / 09.08.2005
Цитата: Camarada
Можно придумать много методов изврата, но зачем? ГУИД по-моему зависит от времени до наносекунды (и не только от времени), совпадения невозможны.

Не только от времени. От идентификатора процессора...

Цитата: Camarada
Вопрос у меня в другом. Какого, простите, хрена эта и многие другие темы делают в разделе WinForms. Создателю темы -1.

Ну зачем же так резко :)
Он под КПК фигачит программку - там тоже это вин-формы.

241
14 августа 2008 года
Sanila_san
1.6K / / 07.06.2005
Создателю темы -1 за диалект русского языка и нежелание думать головой.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог