powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PowerBuilder 10 - какова максимальная длина string?
24 сообщений из 24, страница 1 из 1
PowerBuilder 10 - какова максимальная длина string?
    #36089107
ShadeSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
собсно сабж
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089327
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F1 нажимал ?
PB10 Help String

Any ASCII character with variable length (0 to 2147483647).
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089499
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexis glinskiF1 нажимал ?
PB10 Help String

Any ASCII character with variable length (0 to 2147483647).

Ну насчет этого они нагло врут, и половины не будет.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089565
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Марк
Ну насчет этого они нагло врут, и половины не будет.
Почему ?
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089599
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что Unicode занимает 2 байта, а больше 2 гигабайт адресного пространства под win32 получить можно только извратившинь немного, а там еще powerbuilder и прочие переменные сидят... Так что 900000000 где-то с копейками будет, если повезет :)
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089830
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркПотому что Unicode занимает 2 байта, а больше 2 гигабайт адресного пространства под win32 получить можно только извратившинь немного, а там еще powerbuilder и прочие переменные сидят... Так что 900000000 где-то с копейками будет, если повезет :)
А есть ли какая-то рекомендуемая величина, чтобы избежать возможных проблем?
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089841
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AIS,

А есть ли какой нибудь оправданный бизнес use case для принесения на клиента > 1 gb stringa?
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36089948
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AISЛокшин МаркПотому что Unicode занимает 2 байта, а больше 2 гигабайт адресного пространства под win32 получить можно только извратившинь немного, а там еще powerbuilder и прочие переменные сидят... Так что 900000000 где-то с копейками будет, если повезет :)
А есть ли какая-то рекомендуемая величина, чтобы избежать возможных проблем?
32 Kb - one chunk
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090042
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркПотому что Unicode занимает 2 байта, а больше 2 гигабайт адресного пространства под win32 получить можно только извратившинь немного, а там еще powerbuilder и прочие переменные сидят... Так что 900000000 где-то с копейками будет, если повезет :)
действительно не работает, даже 900,000,000 ... баг либо в билдере, либо в хэлпе :)
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090070
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexis glinskiЛокшин МаркПотому что Unicode занимает 2 байта, а больше 2 гигабайт адресного пространства под win32 получить можно только извратившинь немного, а там еще powerbuilder и прочие переменные сидят... Так что 900000000 где-то с копейками будет, если повезет :)
действительно не работает, даже 900,000,000 ... баг либо в билдере, либо в хэлпе :)
В хелпе все правильно написано(две ошибки наложились и дали правильный ответ) - там теоретическое значение для юникодной строки на 32-битной платформе.
А на практике зависит от доступной виртуальной памяти.

Другое дело что код ядра PB написан настолько некачественно, что возможны ситуации, когда, даже при наличии памяти, создание строк такого размера может приводить к проблемам.
Например, менеджер памяти PB может просто не быть приспособленным к выделению таких больших цельных кусков памяти из-за неполной отлаженности кода отвечающего за этот класс блоков памяти.

Впрочем, необходимость держать в памяти такие объемы данных в клиент-серверном приложении говорит об ошибках в проектировании.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090300
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyВ хелпе все правильно написано(две ошибки наложились и дали правильный ответ) - там теоретическое значение для юникодной строки на 32-битной платформе.
А на практике зависит от доступной виртуальной памяти.

Другое дело что код ядра PB написан настолько некачественно, что возможны ситуации, когда, даже при наличии памяти, создание строк такого размера может приводить к проблемам.
Например, менеджер памяти PB может просто не быть приспособленным к выделению таких больших цельных кусков памяти из-за неполной отлаженности кода отвечающего за этот класс блоков памяти.

Впрочем, необходимость держать в памяти такие объемы данных в клиент-серверном приложении говорит об ошибках в проектировании.
Неправильно там написано, т.к. такого значения достичь невозможно даже теоретически, т.к. нужно будет оставить хоть сколько-то памяти на сам код, а то кто это выделять все будет.
Не гоовря уже об особенностях реализации Windows, где программе в обычном режиме доступно виртуального адресного пространства 2ГБ - 128 КБ или 3ГБ - 128 КБ (с возможностью того что Windiws не заведется, т.к. не заработает часть драйверов ) под NT и еще меньше под 95. Минус код + стек + структуры приложения. Остальное - для вашей любимой строки . Только учтите, что есть такая вещь, как фрагментация памяти, благодаря которой можно иметь много свободной памяти, но непрерывного большого куска не иметь. Менеджер памяти он конечно умный, будет пытаться оптимизировать выделение памяти, но и его в заблуждение ввести можно .
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090301
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, для интересующихся архитектурой памяти в Windows тынц .
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090324
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А правильны ответ звучит так: максимальная длинна строки равна длинне максимального непрервыного незарезервированного участка сегмента данных деленного на 2, с учетом того, что у системы хватит виртуальной памяти, чтобы обеспечить выделение данного участка.
Т.е. никакой фиксированной длинны строки нет.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36090834
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркНеправильно там написано, т.к. такого значения достичь невозможно даже теоретически, т.к. нужно будет оставить хоть сколько-то памяти на сам код, а то кто это выделять все будет.
Как раз теоретически (в i386 и выше) - возможно выделить блок виртуальной памяти 4Г за счет разделения адресных пространств стека, данных и кода по разным селекторам. Более того - теоретически возможно выделение нескольких таких блоков памяти.
А на практике - в Винде - нет, т.к. там по дизайну все селекторы процесса указывают на общее 4Г адресное пространство, разделяемое с ОС. Сделано это по нескольким причинам, например совместимость размеров указателей с win16, или просто экономия памяти.

Так что в хелпе написано правильно - именно теоретическое максимальное значение надо писать.
Иначе в этой статье хелпа смысла нет. И так ясно что "с учетом того, что у системы хватит виртуальной памяти".
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091076
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyКак раз теоретически (в i386 и выше) - возможно выделить блок виртуальной памяти 4Г за счет разделения адресных пространств стека, данных и кода по разным селекторам. Более того - теоретически возможно выделение нескольких таких блоков памяти.
А на практике - в Винде - нет, т.к. там по дизайну все селекторы процесса указывают на общее 4Г адресное пространство, разделяемое с ОС. Сделано это по нескольким причинам, например совместимость размеров указателей с win16, или просто экономия памяти.

Эээ... ну в принципе да, хотя PowerBuilder написан с учетом такого дизайна Windows, следовательно даже теоретически он выделить столько памяти не сможет.
Anatoly Moskovsky
Так что в хелпе написано правильно - именно теоретическое максимальное значение надо писать.
Иначе в этой статье хелпа смысла нет. И так ясно что "с учетом того, что у системы хватит виртуальной памяти".
Так даже если у системы и хватит ресурсов, то все равно не сможет
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091199
ShadeSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Понятно, всем спасибо.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091205
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Маркхотя PowerBuilder написан с учетом такого дизайна Windows, следовательно

Ставлю ящик пива на то, что PowerBuilder написан без знания какого-то ни было дизайна Windows, и вообще без особых знаний и умений
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091213
KOLCHOZ_POSTEVENT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На четвёрке, лет 13 назад, задался, было, таким вопросом. На второй неделе знакомства с PB.
Взял Multi Line Edit и в цикле стал загонять в его TEXT property колбасу из '/'. Получил число 3000.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091241
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KOLCHOZ_POSTEVENTНа четвёрке, лет 13 назад, задался, было, таким вопросом. На второй неделе знакомства с PB.
Взял Multi Line Edit и в цикле стал загонять в его TEXT property колбасу из '/'. Получил число 3000.

32-битная длина строк поддерживается только с PB6. Причем реально эта поддержка заработала без багов только с PB6.5

А у Multi Line Edit есть еще и собственный лимит, не зависящий от PB, т.к. это контрол Windows.
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091494
andy753
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нечего тут флудить и стебаться. Так опустить можно любую среду.

Вспомните, либо почитайте (хотя бы в википедии) историю создания Билдера. Там небось уже столько команд его переписывала-дописывала, что на код страшно смотреть.

Хорошо хоть работает пока, ПОЧТИ без падений :))
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091732
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andy753Нечего тут флудить и стебаться. Так опустить можно любую среду.

Вспомните, либо почитайте (хотя бы в википедии) историю создания Билдера. Там небось уже столько команд его переписывала-дописывала, что на код страшно смотреть.

Хорошо хоть работает пока, ПОЧТИ без падений :))
Историю-то мы знаем. Но постебаться никогда не помешает. Мы ж таки практически над собой стебемся :)

Вот кстати и альтернативная история PB написанная мной.
PB version: Import time
5.0.0.0: 00:00:07
5.0.3.35: 00:00:08
5.0.4.76: 00:00:12
6.5.0.1163: 00:00:14
7.0.1.6012: 00:00:14
7.0.2.9025: 00:00:14
8.0.2.9626: 00:00:45
8.0.3.9704: 00:00:48
9.0.1.6533: 00:00:46
9.0.2.7509: 00:00:48
9.0.2.7578: 00:00:47
9.0.2.7661: 00:00:47
9.0.3.8004: 00:00:47
9.0.3.8511: 00:00:48
9.0.3.8565: 00:00:48
10.0.0.4500: 00:00:47
10.0.1.5502: 00:00:45
10.0.1.6044: 00:00:44
10.2.0.7516: 00:00:46
10.2.0.8100: 00:00:47
10.2.1.9004: 00:00:45
10.5.0.4500: 00:00:46
10.5.0.5034: 00:00:48
10.5.0.5063: 00:00:46
10.5.0.5079: 00:00:46

Это зависимость времени компиляции одной и той же библиотечки от версии PB.
Вопросы есть ?
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091775
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyЛокшин Маркхотя PowerBuilder написан с учетом такого дизайна Windows, следовательно

Ставлю ящик пива на то, что PowerBuilder написан без знания какого-то ни было дизайна Windows, и вообще без особых знаний и умений
Думаю этот ящик вы проиграли...
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091798
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФилиппAnatoly MoskovskyСтавлю ящик пива на то, что PowerBuilder написан без знания какого-то ни было дизайна Windows, и вообще без особых знаний и умений
Думаю этот ящик вы проиграли...
Учитывая мое предыдущее сообщение, думаю что - нет
...
Рейтинг: 0 / 0
PowerBuilder 10 - какова максимальная длина string?
    #36091987
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К 5-й версии kernel уже был давно написан, так что ваша предыдущая иллюстрация ни о чём не говорит :-))
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / PowerBuilder 10 - какова максимальная длина string?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]