O
Omh
Камрады, моё почтенде!
Встала задача получить некое уникальное значение (будет использоваться как название для папки).
@Unique не катит, т.к. там участвует часть имени пользователя, а соответсвенно могут вылезти кириллица, всякие умляуты и т.д.
Т.е. очень желательно получить уникальное цифровое значение.
Какие значения были до этого, я не знаю, т.е. принцип "предидущее значение + 1" не годиться.
В течении секунды может быть сгенерировано n уникальных значений, т.е. текущее время тоже пролетает.
В идеале, цикл выполняющийся в пределах секунды
должен выпечатаь 100 значений, но, по идее, сгодиться и если число сгенерированных значений будет >80 думаю мне этого хватит.
Пока что смотрю в сторону
Но такая конструкция выполненная в цикле менее секунды 100 выдаёт только 11 уникальных значений.
Куда бы добавить соли?
Спасибо!
Можно, конечно ввести глобальный счётчик, но пока не хотелось бы.
Ани айдиас аппришиэйтед!
Добавлено: Ща попробовал с глобальным счётчиком, вообще работает.
Т.е. объявил ненавистную мной глобальную переменную и использую её как часть уникального значения.
Т.е. в пределах одного запуска цикла всё получается, как надо.
Добавлено: Уточню, что мне вообще и надо в пределах одного запуска.
Вообщем, похоже, проблема решена с помощью приватной глобальной переменной.
Встала задача получить некое уникальное значение (будет использоваться как название для папки).
@Unique не катит, т.к. там участвует часть имени пользователя, а соответсвенно могут вылезти кириллица, всякие умляуты и т.д.
Т.е. очень желательно получить уникальное цифровое значение.
Какие значения были до этого, я не знаю, т.е. принцип "предидущее значение + 1" не годиться.
В течении секунды может быть сгенерировано n уникальных значений, т.е. текущее время тоже пролетает.
В идеале, цикл выполняющийся в пределах секунды
Код:
For i = 1 To 100
Print UniqueValue()
Next
Пока что смотрю в сторону
Код:
Randomize
UniqueValue = Cstr(Rnd()) + Cstr(Getthreadinfo(6)) ' LSI_THREAD_TICKS
Куда бы добавить соли?
Спасибо!
Можно, конечно ввести глобальный счётчик, но пока не хотелось бы.
Ани айдиас аппришиэйтед!
Добавлено: Ща попробовал с глобальным счётчиком, вообще работает.
Т.е. объявил ненавистную мной глобальную переменную и использую её как часть уникального значения.
Т.е. в пределах одного запуска цикла всё получается, как надо.
Добавлено: Уточню, что мне вообще и надо в пределах одного запуска.
Вообщем, похоже, проблема решена с помощью приватной глобальной переменной.