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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Хорошо хоть работает пока, ПОЧТИ без падений :))
...
Рейтинг: 0 / 0
15.07.2009, 17:07
    #36091732
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerBuilder 10 - какова максимальная длина string?
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
15.07.2009, 17:20
    #36091775
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PowerBuilder 10 - какова максимальная длина string?
Anatoly MoskovskyЛокшин Маркхотя PowerBuilder написан с учетом такого дизайна Windows, следовательно

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


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