powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Что эффективнее?
11 сообщений из 11, страница 1 из 1
Что эффективнее?
    #37062685
BTGS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Скажем, есть объект, имеющий некоторое свойство (допустим, точно известно, что оно не меняется), которое часто используется в коде. Что эффективнее: каждый раз получать это свойство через object1.property1 или же занести это значение в переменную и использовать в дальнейшем её?
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062711
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BTGSЧто эффективнее: каждый раз получать это свойство через object1.property1 или же занести это значение в переменную и использовать в дальнейшем её?
Х/з как у кого... У нас в Каше (экземпляр класса) уже скопирован в оперативку, т.ч. не факт что будет потеря при таком (object1.property1) обращении...
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062738
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BTGS,

эффективнее не изобретать паровоз, а просто писать нормальный код. Хороший компилятор сам все сделает.
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062753
BTGS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SiemarglBTGS,

эффективнее не изобретать паровоз, а просто писать нормальный код. Хороший компилятор сам все сделает.

то есть код, не использующий свойств? отлично
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062757
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BTGS , однако потестил...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 n
 s o=##class(Tel.Abonent).%OpenId( 14 )
 s h=$h
 s test=o.Name
 d o.%Close()
 k o 
 f i= 1 : 1 : 100000000  i test
 w $p($h,",", 2 )-$p(h,",", 2 )
 q
Выполняется 3сек

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 n
 s o=##class(Tel.Abonent).%OpenId( 14 )
 s h=$h
 f i= 1 : 1 : 100000000  i o.Name
 d o.%Close()
 k o 
 w $p($h,",", 2 )-$p(h,",", 2 )
 q
Выполняется 29сек и сам экземпляр в это время открыт и заблокирован для других...
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062780
BTGS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa,

26 сек. разницы! интересно. Но еще ведь, наверно, зависит от IDE, языка, класса и конкретного свойства
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062850
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BTGS , разумеется что зависит...
...
Рейтинг: 0 / 0
Что эффективнее?
    #37062891
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa, это явно проблемы эмуляции объектов в M =)
Или, возможно, интерпретации кода.

В приличных компиляторах такого нет, а вот за Яву с Шарпом зуб не дам.
...
Рейтинг: 0 / 0
Что эффективнее?
    #37063364
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemarglэто явно проблемы эмуляции объектов в M =)
Мого быть, мого быть... (с) А.Райкин

Но вот у нас вот так.
...
Рейтинг: 0 / 0
Что эффективнее?
    #37063368
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В любом случае у ТС есть пример как потестить свои возможности...
...
Рейтинг: 0 / 0
Что эффективнее?
    #37074265
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, вообще сразу сделать указатель и работать с памятью?

Как вариант - сделать метод класса, возвращающий значение свойства. Естественно, внутри класса метод должен быть реализован наиболее низкоуровневым образом.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Что эффективнее?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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