Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Визуализации хода выполнения метода / 14 сообщений из 14, страница 1 из 1
12.09.2008, 17:09
    #35536963
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
Пытаюсь вывести на CSP страницу изменяющиеся в ходе выполнения кащейского метода переменные, делал примерно так:
Код: plaintext
1.
2.
3.
4.
5.
<script language=Cache method="X" arguments="X1:%Integer,X2:%Integer">
//Здесь начало цикла по переменной i{
&js<document.getElementById('p0').firstChild.data=#(i)#;>
//Цикл заверщается}
</script>

Ну и сам абзац, куда выводится переменная i:
Код: plaintext
1.
2.
3.
<p>
<b name="p0" id="p0">?</b>
</p>
При этом никакой визуализации не наблюдаю, а поле p0 заполняется лишь после завершения цикла, ессно последним значением переменной i....
Вопрос стоит, как сделать, чтоб информация о зачении переменной i выводилась при каждом проходе цикла?
...
Рейтинг: 0 / 0
12.09.2008, 19:24
    #35537231
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
В результате сгенерируется код типа

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
document.getElementById('p0').firstChild.data= 1 ;
document.getElementById('p0').firstChild.data= 2 ;
document.getElementById('p0').firstChild.data= 3 ;
document.getElementById('p0').firstChild.data= 4 ;
document.getElementById('p0').firstChild.data= 5 ;
document.getElementById('p0').firstChild.data= 6 ;
document.getElementById('p0').firstChild.data= 7 ;
...

Посчтайте, сколько элементов изменится? По-моему, максимум один.
...
Рейтинг: 0 / 0
12.09.2008, 20:02
    #35537265
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
CacheLotПытаюсь вывести на CSP страницу изменяющиеся в ходе выполнения кащейского
Вопрос стоит, как сделать, чтоб информация о зачении переменной i выводилась при каждом проходе цикла?
Генерировать что-то типа
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+1;
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+2;
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+3;

(как один из вариантов)
...
Рейтинг: 0 / 0
13.09.2008, 07:30
    #35537495
Ptn
Ptn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
В CSP никак - ибо если вы вызываете простой метод - то пусть он через
Код: plaintext
1.
&js<document.getElementById('p0').firstChild.data=#(i)#;>
возращает хоть тысячу присвоений ... они все равно будут выполнять только после ВОЗВРАТА из метода, а следовательно после конца цикла...

Визуализация выполнения в CSP делаеться немного подругому - фоновый процесс пишуший в лог и страница периодически считывающая этот лог
...
Рейтинг: 0 / 0
15.09.2008, 12:10
    #35539235
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
PtnВ CSP никак - ибо если вы вызываете простой метод - то пусть он через
Код: plaintext
1.
&js<document.getElementById('p0').firstChild.data=#(i)#;>
возращает хоть тысячу присвоений ... они все равно будут выполнять только после ВОЗВРАТА из метода, а следовательно после конца цикла...

Визуализация выполнения в CSP делаеться немного подругому - фоновый процесс пишуший в лог и страница периодически считывающая этот лог

Энто жаль, уж оч много в глобаль надо писать тогда.... моего сороковника не хватит, а "меньшими потерями" обойтись никак нельзя? Должно же что -то быть!?
...
Рейтинг: 0 / 0
15.09.2008, 12:14
    #35539239
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
Блок А.Н. CacheLotПытаюсь вывести на CSP страницу изменяющиеся в ходе выполнения кащейского
Вопрос стоит, как сделать, чтоб информация о зачении переменной i выводилась при каждом проходе цикла?
Генерировать что-то типа
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+1;
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+2;
document.getElementById('p0').innerHTML=document.getElementById('p0').innerHTML+'<br>'+3;

(как один из вариантов)

Так это у меня глаза повылазят просматривать несколько млн значений в ряд, от это настоящяя визуализация! Что б мало не показалось!!!!
...
Рейтинг: 0 / 0
15.09.2008, 13:34
    #35539451
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
CacheLotкак сделать, чтоб информация о зачении переменной i выводилась при каждом проходе цикла?
Ну прикаждом... Не при каждом... Но как вариант можно писать в некий глобал ее значение и отображать его при перезогрузке страницы.
Вот только цыкл в методе нужно оформить например процедуркой и пускать джобом...

Страничку можно и не перезагружать... А например вызывать некое кащейское гиппер событие. Пусть оно читает из глобала значение, возвращает яваскриптовой функции, а та потом выводит его (значение) на страничке.
...
Рейтинг: 0 / 0
15.09.2008, 15:11
    #35539749
Ptn
Ptn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
Вообще в ансамбле есть такие ... похожие страницы - например запуск продукции - там HTML имено что построчно что то пишет - как реализовано не смотрел.
...
Рейтинг: 0 / 0
15.09.2008, 16:57
    #35540211
AlexKB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
Мы поступаем так:
На клиенте периодически вызывается метод таймера, который в свою очередь вызывает Метод класса (чтобы синхронизация выполнялась быстрее) на сервере.
Серверный метод сканирует глобаль и все вновь появившиеся записи (отслеживать маркер последней считанной записи) возвращает в виде строки с разделителями на клиента.
Клиент, получив строку разбирает ее на элементы массива и поэлементно т.е. построчно выводит записи в компонент отображения.
На сервере необходимо синхронизировать поступление новых записей в глобаль с ее вычиткой.

Только для большого потока записей, поступающих в глобаль такой способ не подойдет, трудности с обновлением компонента отображения.


Таким образом мы отслеживаем на клиенте асинхронные события возникающие при обмене с устройствами в коммуникационном сервере.
...
Рейтинг: 0 / 0
16.09.2008, 13:31
    #35541814
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
Возникла мысля такого плана:
1) Ява-скрип с таймером времени;
2) Каждую секунду вызываем серверный метод, показывающий последнюю запись в глобале, куда пишет данные цикл;
3) Ну и отображаем энто на веб странице.

Только как сделать так чтоб одновременно выполнялся и метод Каши и функция ява скрипта?
...
Рейтинг: 0 / 0
16.09.2008, 13:38
    #35541847
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
сам по себе яваскрипт однопоточный


То есть для выполнения мониторинга первый метод должен завершиться, а следовательно метод каше должен стартовать нужную программу через job и завершаться.


Сначала через ##call стартуем нужную программу через job и выходим
Затем ставим в яваскрипте ставим таймер и по таймеру вызываем метод каше, который ныряет в сервер и возвращает нужные данные.

Чет сложно написал, на самом деле все просто :-)
...
Рейтинг: 0 / 0
16.09.2008, 13:40
    #35541849
Блок А.Н.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
ссылка на однопоточность яваскрипта, почему-то ссылка не вставилась

http://sql.ru/forum/actualthread.aspx?tid=595327
...
Рейтинг: 0 / 0
16.09.2008, 13:58
    #35541929
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
CacheLotкак сделать так чтоб одновременно выполнялся и метод Каши и функция ява скрипта?
Добиться этого 100%-но не получится... Т.к. скрипт выполняется на клиенте... А метод на сервере... А эти тачки живут т.с. "своей" жизнью...
Как вариант, ответ с сервера может вообще не прийти, так и не дойти до самого сервера...
...
Рейтинг: 0 / 0
17.09.2008, 04:56
    #35543248
logist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Визуализации хода выполнения метода
На сервере:

for i=1:1:100000 {
чего нибудь делаем
например hang 1
....
set ^mySuperGlobal=i ; Поставили ход выполнения
}

На клиенте:

function x() {
var i=#server(..GetI());
document.getElementById('p0').firstChild.data=i;
}

function window.onload() {
setInterval("x()",1000);
}

<script language=Cache method="GetI">
quit $get(^mySuperGlobal)
</script>


=Сергей Шутов
ООО Димас, Хабаровск
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Визуализации хода выполнения метода / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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