powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отличие функций с $ и без
47 сообщений из 47, показаны все 2 страниц
Отличие функций с $ и без
    #32508731
neue
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1.В чем принципиальное отличие в имени функции с $ и без?
Например: Chr$(34) и Chr(34)
Left$(Text, Tmp) и Left(Text, Tmp)

2. Первый символ в тексте имеет позицию 0 или 1?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508743
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
1. Функции с $ сохранены только для совместимости с предыдущими версиями. Сегодня они не рекомендуются к использованию.

2. Первый символ - 1.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508746
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, не гони
Функции с $ - возвращают значение типа String
Функции без $ - возвращают значение типа Variant, которое затем приводится к string'у
Ну и, собственно, разница между ними - выполняется преобразование типа или нет.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508751
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернее так:
Функции без $ - возвращают значение типа Variant /String (как оно видится в окне отладки)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508779
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ссылаясь на нашего любимого Гетца, ф-ии с $ работают быстрее ;)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508782
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Одно другому не противоречит.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32508867
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторОдно другому не противоречит.

Саныч, может и не противоречит, но комментария, мне кажется, требует.

комментарий
функции без $ кроме того, что возвращают Variant, еще и на вход принимают Variant. Тем самым оказываясь способными обрабатывать входящие Null-значения. Что есть полезно при работе с контролами форм.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509024
Neue
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторФункции без $ - возвращают значение типа Variant, которое затем приводится к string'у

Если все это происходит автоматически, то:
- зачем это нужно
- как это поимать (преобразование из Variant в String)?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509041
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если честно, я не очень понимаю, в чем разница. Даже если функция или переменная типа Variant возвращает значение типа String, то она все равно возвращает значение типа String.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509053
Фотография Темный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрсо скоро сведется к следующему: зачем нужен тип Variant
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509055
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Variant нужен, чтобы возвращать то стринги, то наллы, то лапти. Сова, ты меня не путай.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509116
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Саныч
Даже если функция или переменная типа Variant возвращает значение типа String, то она все равно возвращает значение типа String.
Ты не прав. Вариант - это не стринг.
А учитывая замечание Виктоши - ты не прав вдвойне.
Попробуй-ка такое выполнить
Код: plaintext
1.
Dim s As String
s = Left(Null,  1 )
и такое
Код: plaintext
1.
Dim v As Variant
v = Left(Null,  1 )
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509162
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Лох, я говорю про Фому, а ты про Ерему. Я про случай, когда она возвращает String, а ты про случай, когда она возвращает Null.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509204
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, как ты там говоришь? "Variant нужен, чтобы возвращать то стринги, то наллы, то лапти"? "переменная типа Variant возвращает значение типа String"?
Не бывает Variant'а, возвращающего String
Бывает Variant, содержащий String
Помимо отличающихся наборов допустимых значений разница между String'ом и Variant'ом - в приведении типов. Стало быть во временных затратах (хоть это и пофигу имхо). А так же в дополнительном объеме памяти на хранение структуры Variant'а (хоть это тоже пофигу имхо).

Лох, я говорю про Фому, а ты про Ерему. Я про случай, когда она возвращает String, а ты про случай, когда она возвращает Null.
Случай когда получает String и возвращает String - это Left$
Случай когда получает Variant (стринг или нул) и возвращает Variant (стринг или нул) - это Left
Кого из них ты каким именем назвал?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509245
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ЛохНе бывает Variant'а, возвращающего String
Бывает Variant, содержащий String
Возвращающий - это на случай функции.
Function XXX(...) As Variant - функция типа Variant, которая в частном случае может вернуть String.
Содержащий - это на случай переменной.
Dim XXX As Variant - переменная типа Variant, которая в частном случае может содержать String.

Лохи возвращает Variant (стринг или нул)
Нельзя возвращать Variant. Нет такого типа значения. Есть такой тип переменных и функций.

Другое дело, что если значение типа String возвращено функцией типа Variant, то требуются затраты на распознавание текущего типа значения этой функции.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509248
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Платон мне друг но истина дороже" :)
Саныч ,ЛП прав ,а ты нет .B большинстве случаев ,действительно "это пофигу" (Л.П.) ,но если делать обработку в цикле из десятков тысяч итераций ?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509252
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
В чем именно я не прав? Я согласился, что требуются затраты.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509263
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 (c)VIG

если делать длинный цикл - разницу заметишь при УСЛОВИИ, что код это - native копилированный VB-проект

Готов утверждать, что во всех остальных случаях ( в частности под Акцесс-ом) надежно измеримой разницы не будет НИ ПРИ КАКОЙ длине цикла

Victosha
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509264
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я писал до того как ты согласился
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509269
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ААААААААААААААаааааааааааааааааааааааа

авторFunction XXX(...) As Variant - функция типа Variant, которая в частном случае может вернуть String.
АААААААААААААААааааааааааааааа
В частном случае она может вернуть Variant, содержащий String!!!

авторНельзя возвращать Variant.
Можно

авторНет такого типа значения.
Есть

авторЕсть такой тип переменных
Есть

автори функций
Нет.
Нет такого - тип функции. Есть тип возвращаемого значения (тип переменной в стеке).
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509278
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 Лох:

ББББББББББББББББББББББББББббббббббббббббббббббббб

Что такое Variant, содержащий String? Variant - это структура, у которой значение одно поле, а тип значения другое?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509291
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Саныч

авторVariant - это структура, у которой значение одно поле, а тип значения другое?
абсолютно точно - именно так и есть
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509298
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Понял, благодарен.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509299
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(неграмошный по части ссылок я )

/topic/87645&pg=4

там пост 644036

Код: plaintext
модерирую:\n///topic/ 87645 &pg= 4 # 644036 \nСаныч\n\nТо есть:
/topic/87645&pg=4#644036
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509306
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Victosha
Чтобы получить такую ссылку:
/topic/87645&pg=4#644036
надо написать
// /topic/87645&pg=4#644036
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509313
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ок - будем изучать пулемет.
-)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509322
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Neue- зачем это нужно
скорость работы функций с $ на порядок выше, чем без него. В P-коде ситуация еще хуже.
Neue- как это поимать (преобразование из Variant в String)?
способ представления Variant в String разный. (об этом уже писали)

Пример:
Dim p1 As String
Dim p2 As String
p1 = "test"

p2 = Left(p1, 2)
соответствует следующим вызовам: rtcLeftCharVar; __vbaStrVarMove; __vbaStrMove; __vbaStrMove; vbaFreeVar

p2 = Left$(p1, 2)
соответствует: rtcLeftCharBstr; __vbaStrMove;

Почувствовали разницу?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509344
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ P-коде ситуация еще хуже
конкретно для строковых функций я бы с этим не согласился - как раз режим интерпретации p-кода практически полностью нивелирует разницу
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509361
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычные преобразования Variant'а в String хоть и жрут ресурс, но немного.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Public Function test()
    Dim i As Long
    Dim varSource As Variant
    varSource = CVar("1234")
    Dim strSource As String
    strSource = "1234"
    
    Dim strDest As String
    
    Dim t As Single
    
    t = Timer
    For i =  1  To  10000000 
        strDest = varSource
    Next i
    Debug.Print Timer - t

    t = Timer
    For i =  1  To  10000000 
        strDest = strSource
    Next i
    Debug.Print Timer - t
End Function
Результат выполнения - 2.785156 и 2.542969
Почувствуйте разницу

Вызовы функций - разница чуть побольшеъ
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Public Function test()
    Dim i As Long
    Dim varSource As Variant
    varSource = CVar("1234")
    Dim strSource As String
    strSource = "1234"
    
    Dim strDest As String
    Dim varDest As Variant
    
    Dim t As Single
    
    t = Timer
    For i =  1  To  10000000 
        varDest = left(varSource,  1 )
    Next i
    Debug.Print Timer - t

    t = Timer
    For i =  1  To  10000000 
        strDest = left$(strSource,  1 )
    Next i
    Debug.Print Timer - t
End Function
Результат 4.957031 и 2.925781
Так что " на порядок " - это слишком
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509386
(c)\/IG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мои результаты:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Dim ch
Dim sch As String
Dim i As Long
Dim Start_t As Single
Start_t = Timer
For i =  0  To  1000000 
    sch = Mid$("test",  1 ,  1 )
Next i
Debug.Print "String", Timer - Start_t
Start_t = Timer
For i =  0  To  1000000 
    ch = Mid("test",  1 ,  1 )
Next i
Debug.Print "variant", Timer - Start_t

Код: plaintext
1.
String         . 6835938  
variant         1 . 5 
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509394
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот тут подумал...
Для того, чтобы получить выигрыш в одну секунду на использовании Left$ вместо Left - пришлось обработать 10 миллионов строк.
Я ведь эта... с базами данных работаю... Если мне придется VBA-шным кодом обработать 10 миллионов записей - о проблемах быстродействия Left и Left$ я буду думать в последнюю очередь

2 VIG
У тебя для варианта с Variant'ом лишнее преобразование вкралось - строка в Variant пакуется.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509438
(c)\/IG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
O.K
вот "более жизненный" вариант
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Dim sch As String
Dim i As Long
Dim Start_t As Single
Start_t = Timer
For i =  0  To  1000000 
    sch = Mid$("test",  1 ,  1 )
Next i
Debug.Print "String", Timer - Start_t
Start_t = Timer
For i =  0  To  1000000 
    sch = Mid("test",  1 ,  1 )
Next i
Debug.Print "variant", Timer - Start_t
Код: plaintext
1.
String         . 6796875  
variant         1 . 503906  

> о проблемах быстродействия Left и Left$ я буду думать в последнюю очередь
Да уж ,живем в такое время ,что проще купить новый компьютер ,чем ломать голову над оптимизацией кода (:
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509460
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 VIG
вот "более жизненный" вариант
Твой "более жизненный" вариант на самом деле еще менее корректен. Там уже два лишних преобразования - сначала строка "test" преобразуется в Variant, а потом полученный из Mid'а Variant преобразуется в строку.

Да уж ,живем в такое время ,что проще купить новый компьютер ,чем ломать голову над оптимизацией кода (:
Это пример ненужной оптимизации, над которой не надо ломать голову. Выигрыша на задачах БД просто не заметишь. Ты же не библиотеку обработки регулярных выражений пишешь?
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509514
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
после того, как разродился участием в "непечатных символах", решил пооптимизировать Гетсев dhTranslate
вариант1 получился такой - замена & на оператор MID (главное улучшение > 1.5 раз) И заменой InStr на InStrB (еще процентов 20) (не помню, знал ли раньше, но вперился в голову этот тип мне не так давно)
получилось от 1.5 до 3.5 раз лучше по сравнению с исходным на двух наборах

дальше, следуя своим ожиданиям, высказанным в "непечатных символах", преписал вариант1, заменив строковые функции на обработку массивов интов. В том числе, заменив InStrB на вложенный цикл линейного поиска по строке заменяемых символов. С ИЗУМЛЕНИЕМ обнаружил, что этот вариант в 18 раз хуже варианта1.

Тут же перенес в VB и сделал 2 компиляции - одна - native, другая - p-code.
Так вот при p-code вариант2 в 12 раз хуже варианта1
При native вариант2 ВДВОЕ ЛУЧШЕ варианта1

СИЛЬНО призадумался - чуть было не решился поменять линейный поиск на двоичный с предварительной сортировкой ShellSort-ом. И преобразованием всего хозяйства в класс.
Потом понял - что в среднем потребуются несколько тысяч вызовов, чтобы опрадать предварительную сортировку. Плюнул и остановился на вариант1

вот такая оптимизация.

ЗЫ
(приводить ли код и какой или ну его?)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509576
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Лох Позорный
согласен, что "на порядок" - это слишком, максимальный выигрыш только в два раза. На порядок, это если сравнивать Variant c числовыми типами. (сам не тестировал - так в книжке сказано).
А с $ или без него - это действительно мелочи, если работаешь с таким монстром, как Access. Равно как спорить насколько быстрее побежит черапаха, если ей на красовках шнурки погладить. Да не побежит она!!!
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509579
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ЛП
"более жизненный" он потому, что четко показывает разницу между Mid$ и Mid,
прочих равных условиях.
>Выигрыша на задачах БД просто не заметишь
Да я не спорю.Так ,пофилософствовать захотелось
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509612
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 marvan

про черепаху, пожалуй слишком
по моим замерам скорость исполнения VB p-кода опережает исполнение
VBA-кода Access-ом в среднем НЕ БОЛЕЕ чем в два раза.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509625
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Victosha
Дык и VB - тоже черепаха, если говорим о массовых операциях над строками, или о сложной математике.
Насчет строк - ну есть такой маленький интерпретатор, Perl называется. Он регулярные выражения щелкает с такой скоростью, что программисты на ассемблере стоят в сторонке и нервно курят. Так что по сравнению с Perl'ом - все черепахи. Только я на Perl'е не стану рисовать кнопочки/формочки
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509642
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Victosha
про черепаху

речь не о VB p-коде и VBA-коде Access, а о быстродействии Access, как базы данных.
Написал раз экспертную систему, которая в качестве БД использовала Access. Для принятия решения многократно перелопачивалась база объёмом в гигабайт.
Код был оптимизирован "под самое не балуйся". Операция на идентификацию строки выполнялась минуту. Чуть медленнее, чем это делает оператор, да и не всегда точно. С тех пор злой я на Access, по тихоньку перехожу на собственные форматы хранения данных.

С $ или без него - а повиснеш на запросе и ...
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509675
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про Perl

если всерьез - то с выражениями (регулярными) надо с УМОМ и РАССТАНОВКОЙ - в кривых руках считать будет - мало не покажется.
Скорость обработки нелинейно зависит от сложности выражения. Так что в простых случаях - самолет. В сложных - я даже комментировать не буду. Проще переформулировать задачу.


Сам не сравнивал, но не ожидаю катастрофичекой победы по скорости перла над RegExp в Видновом скрипт-движке. (Гибгость и общая мощность - другое дело)

ЗЫ
Еще раз про p-code
Год или два назад наткнулся на статейку не помню какого мериканского или канадского университету, датированную то ли семьдесят последним то ли восемьдесят ранним годом. Так там автор обосновывал мысль о том, что по мере развития процессорных технологий скорость исполнения p-кода под управлением правильно написанного скриптового движка НЕИЗБЕЖНО ОПЕРЕДИТ скорость исполнения native-приложений, по крайней мере на определенном круге задач.
Идея заключается в чтом, что при достаточном количестве процессорного кеша сам исполнитель, будучи в него загруженным, и загружая p-code фактически как данные для себя, никогда не вызовет инвалидации процессорного кэша. Для native-приложения это практически нереально.

Надо только, чтобы p-код был самодостаточным и не вызывал обращения к "внешнему операционному миру" непосредственно.

К сожалению, исполнитель p-кода VB/VBA ПО АРХИТЕКТУРЕ не является движком такого типа. (Ближе всего, на мой взгляд, к этой схеме Java)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509682
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>злой я на Access, по тихоньку перехожу на собственные форматы хранения данных
Предлагаю до кучи отказатся от операционной системы.
Тормозит она настоящий полет мысли :))
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509695
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Предлагаю до кучи отказатся от операционной системы
Мысль не новая ,но интересная
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509712
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 marvan
Для принятия решения многократно перелопачивалась база объёмом в гигабайт.
А че так хиленько-то? Че, на терабайт не насобирали экспертных данных что-ли?
Не перестаю удивляться людской глупости. На основе настольной (для тупых повторяю - настольной ) СУБД строить гигабайтные экспертные системы... это да...
Этак можно крутейший спортивный мотоцикл черепахой обозвать. Потому что он ну очччень медленно везет двадцатитонный прицеп. И ломается при этом часто.

А про собственные форматы - ну да... Советую в "Сравнение СУБД" заглянуть, там есть интересные топики по этому поводу

2 Victosha
Так там автор обосновывал мысль о том, что по мере развития процессорных технологий скорость исполнения p-кода под управлением правильно написанного скриптового движка НЕИЗБЕЖНО ОПЕРЕДИТ скорость исполнения native-приложений, по крайней мере на определенном круге задач.
Рихтер в своей книжке про дотнет говорит то же самое. Правда мотивирует этот тезис немного по-другому. Навскидку помню пример с JIT-оптимизацией исполняемого кода под текущий процессор со всеми его чудесными MMX-ами, SSE-шками, 3DNow и прочей великолепной лабудой.

А инвалидация процессорного кеша - это тоже аргумент... Надо будет обдумать на досуге. Хотя... ну не будет происходить инвалидации исполняемого кода (рантайм библиотек), зато постоянно не будет хватать места под данные (собственно P-Code)
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509721
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторне будет хватать места под данные (собственно P-Code)

а сколько кэша уже сейчас в Intel P4 Extreme Edition?
а каков размер p-кода "среднего" VB-приложения? (ответ - малого десятки, среднего сотни килобайт)
КАК раз именно, один раз ЦЕЛИКОМ загрузившись в кеш p-код и не будет вызывать инвалидации. А наличие типизации в синтаксисе такого скрипт-языка - БОЛЬШОЙ тоому помошник.
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509740
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а каков размер p-кода "среднего" VB-приложения? (ответ - малого десятки, среднего сотни килобайт)
эгегегегей
у меня с десяток мегабайт аксесовского "пи-кода"

Пусть есть приложение, занимающее в пикоде сотню-другую килобайт. Ну и собственно рантайм - пару мег (цифры с потолка). Если оно влезает в кеш в таком виде - дык кто ему мешает влезать в кеш в скомпиленном в native-код exe-шнике?
Основная радость может быть достигнута при использовании одного рантайма на все процессы. А это уже дотнет какой-то (или марка сигарет/остров х.. знает где) получается
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509754
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Лох Позорный
Че, на терабайт не насобирали экспертных данных что-ли
исходных данных было 250 мегов, до гигабайта она разраслась в процессе оптимизации (когда в жертву производительности приносится обём и структура данных)

На основе настольной (для тупых повторяю - настольной) СУБД строить гигабайтные экспертные системы
Для не настольной СУБД нужен не настольный комп. Да, собственно, потому её и использовал, что она настольная.

Этак можно крутейший спортивный мотоцикл черепахой обозвать
Согласен, "Не по Сеньке шапка" оказалась. Речь идёт о том, что оптимизация VB кода бесполезна если на работу с БД уходит много "машинных ресурсов"
...
Рейтинг: 0 / 0
Отличие функций с $ и без
    #32509758
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторкто ему мешает влезать в кеш в скомпиленном в native-код

тип в этом месте заключается в том, что различают кэш делится на кэш для кода и кэш для данных.

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

В скриптовых языках этого (перезагрузки из памяти данных) часто (не всегда) можно избежать. Утверждается, что при достаточно эффективном исполнителе, за счет резкого сокращения количества чтений/повторных чтений из памяти p-код имеет шанс обогнать native.
По мне - так звучит правдоподобно.

ЗЫ
по поводу медленно на акцессе. Если организовывать перебор с возвратом, я хотел бы понять - на чем будет "нормально", не медленно.
Акцесс, имхо, не причем.
...
Рейтинг: 0 / 0
47 сообщений из 47, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отличие функций с $ и без
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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