|
О сколько нам открытий чудных ... это что в замере? | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
02.03.21
✎
08:11
|
||||
1
ДенисЧ
02.03.21
✎
08:13
|
Если в конфигураторе ты видишь фигню - проверь, сохранил ли ты конфигурацию? И почистил ли ты кеш?
|
|||
3
Mikeware
02.03.21
✎
08:24
|
(1) а обратно - верно?
|
|||
4
Mikeware
02.03.21
✎
08:25
|
(1) а обратное - верно?
|
|||
5
ДенисЧ
02.03.21
✎
08:39
|
(3) да
(4) да ))) |
|||
6
Itmaint
02.03.21
✎
09:03
|
(5) +
|
|||
7
Fedor-1971
02.03.21
✎
09:40
|
(0) таки 1С можно считать смесью интерпретатора и компилированного кода
На картинке констатирован факт: В процессе исполнения, по некому правилу (индексу), получили представление исполняемой строки 28 раз, а то, что там "////" никого не волнует, представление получено и всё. Очень возможно, что поймал в замер компиляцию кода |
|||
8
ДенисЧ
02.03.21
✎
09:45
|
(7) Мда... Доктор же прописывал таблетки, почему ты их не принимаешь?
|
|||
9
RomaH
naïve
02.03.21
✎
09:48
|
остановил сервер
удалил все из папки srvinfo\reg_1541 аналогично почистил папку базы AppData\Roaming\1C\1cv8\f3d366a6-9eb0-41a0-905d-48d6e6698179 все равно ОбщийМодуль.ОбщегоНазначения.Модуль 1 /////////////////////////////////////////////////////////////////////////////////////////////////////// 28 0,131450 145,37 фишка в том, что ОбщийМодуль.ОбщегоНазначения больше нигде 28 раз не вызывается 27 есть 29 есть а 28 - только эта строка |
|||
10
Почему 1С
02.03.21
✎
09:48
|
Кстати на днях увидел такую же фигню , и очень похоже в том же модуле
|
|||
11
Почему 1С
02.03.21
✎
09:56
|
||||
12
polosov
02.03.21
✎
09:59
|
Пора поставить там точку останова.
|
|||
13
RomaH
naïve
02.03.21
✎
10:07
|
(12) не срабатывает
|
|||
14
Fedor-1971
02.03.21
✎
10:18
|
(8) "Сдвинь корону на бок, чтоб не висла на ушах".
(12) Точка останова не сработает, т.к. связать исполняемую строку с текстом кода не получилось, вот и вывели первую из модуля |
|||
15
arsik
гуру
02.03.21
✎
10:19
|
(9) а AppData\Local\1C\ кто чистить будет?
|
|||
16
arsik
гуру
02.03.21
✎
10:20
|
+(15) Там кеш конфигурации для разработки хранится, я так помню
|
|||
17
RomaH
naïve
02.03.21
✎
10:33
|
Процедура ПриОпределенииВидовПодключаемыхКоманд(ВидыПодключаемыхКоманд) Экспорт
Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); вот тут добавляется один вызов сама функция Функция ОбщийМодуль(Имя) Экспорт Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда // АПК:488-выкл ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно. УстановитьБезопасныйРежим(Истина); Модуль = Вычислить(Имя); // АПК:488-вкл ИначеЕсли СтрЧислоВхождений(Имя, ".") = 1 Тогда Возврат СерверныйМодульМенеджера(Имя); Иначе Модуль = Неопределено; КонецЕсли; //Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда // ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( // НСтр("ru = 'Общий модуль ""%1"" не найден.'"), // Имя); //КонецЕсли; Возврат Модуль; КонецФункции фишка в том, что замер внутри этой функции не работает т.е. захожу в функцию по F11 - включаю замер F11 - выключаю замер - пустота а F10 на строке МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); дает: ОбщийМодуль.ОбщегоНазначения.Модуль 1 1 0,000034 11,05 ОбщийМодуль.ОбщегоНазначения.Модуль 1 216 Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда 1 0,000069 22,24 ОбщийМодуль.ОбщегоНазначения.Модуль 1 218 УстановитьБезопасныйРежим(Истина); 1 0,000013 4,22 ОбщийМодуль.ОбщегоНазначения.Модуль 1 219 Модуль = Вычислить(Имя); 1 0,000121 38,93 ОбщийМодуль.ОбщегоНазначения.Модуль 1 225 КонецЕсли; 1 0,000002 0,55 ОбщийМодуль.ОбщегоНазначения.Модуль 1 233 Возврат Модуль; 1 0,000002 0,74 ОбщийМодуль.ОбщегоНазначения.Модуль 1 235 КонецФункции 1 0,000012 3,90 ОбщийМодуль.ИнтеграцияПодсистемБСП.Модуль 1 412 МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); 1 0,000053 17,11 |
|||
18
RomaH
naïve
02.03.21
✎
10:40
|
вот оно
Модуль = Вычислить(Имя); Имя = "УправлениеПечатью" а почему? |
|||
19
polosov
02.03.21
✎
10:48
|
(18) Чтобы потом Модуль.ИмяМетода() сделать?
|
|||
20
RomaH
naïve
02.03.21
✎
10:54
|
(19) да
В = Вычислить("А = 1"); Модуль = Вычислить(Имя); - аналогично ОбщийМодуль.ОбщегоНазначения.Модуль 1 2 0,000047 17,05 а ОбщийМодуль без Вычислить не получить... |
|||
21
rphosts
02.03.21
✎
11:01
|
(0) галочка "включая воженные" или как оно там стоит? 54% это не в плане всего по этому модулю суммарно?
|
|||
22
RomaH
naïve
02.03.21
✎
11:12
|
(21) прочитал (18)?
ну как бы: https://ibb.co/gJ3fDMZ код общего модуля: Функция А() Экспорт Возврат 1 = 1; КонецФункции Функция ВычислитьА() Экспорт Возврат Вычислить("1 = 1"); КонецФункции |
|||
23
polosov
02.03.21
✎
11:19
|
(20) Ты может чего-то не понял.
Вот для этого это делается: М = Вычислить("ОбменМобильныеКлиент"); М.ОповеститьОЗавершении(); |
|||
24
RomaH
naïve
02.03.21
✎
11:19
|
да понял для чего
я смотрю почему в замере первая строка модуля фигурирует и на что она влияет |
|||
25
RomaH
naïve
02.03.21
✎
11:28
|
похоже просто так отображает
пустой ОМ дает такой же результат по замеру что и типовой ОМ |
|||
26
polosov
02.03.21
✎
11:36
|
(25) Не просто так.
Модуль в это время инициализируется. В (7) в правильном направлении мысли. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |