Как сделать паузу в action
Доброго времени суток.
Подскажите, кто знает, можно ли в коде 1с установить паузу в выполнении кода? Можно конечно вставить пустой цикл с проверкой времени выполнения, но исполнение этого цикла нагружает проц под завязку, да и вообще решение колхозное. В некоторых случаях можно использовать ПодключитьОбработчкиОжидания( , ), но в данном контексте не канает - нужно делать паузу внутри цикла. Например как в VBS команда Sleep( ). Или vbs-вставка и есть самое корректное решение?
Заранее спасибо.
нет, ну а чо? понапишут копрокода а потом удивляются - а чё это у нас тормозит так? йёёёё. да тут запрос в цикле со слипом в цикле!
Это вывод таблицы значений на экран-табло. Задача сводится к следующему: Показать на экране ровно 12 строк текста, подождать 30 секунд, показать следующие 12 строк. Количество строк фиксировано и =60. Т.е. нужно показать 5 страниц, затем после 5ой вернуться к первой.
p.s. Нечего сказать - лучше промолчать.
(7) а внутри обработчика прописать холостой цикл. Замечательная идея от которой я в самом начале отказался.
(11) нафига внутри обработчика холостой цикл? он у тебя будет вызываться 1 раз в 12 секунд и выводить нужную порцию инфы. никаких циклов
В итоге vbs рулит. Хотя для какого-нибудь автопилота в следующий раз буду использовать предупреждение с таймаутом.
(17) За пустые циклы и предупреждение с тайм-аутом (в целях задержки выполнения кода) прогам нужно руки тупой пилой отпиливать. В клюшках приходилось извращатся, а в восьмёрке для этих целей существует ПодключитьОбработчикОжидания (AttachIdleHandler)
я таки не понял, нафига в (6) временный файл? почему не использовать MSScriptControl.ScriptControl сразу?
(0) я делала паузу через вызов системной команды ping, там можно указать сколько раз пинговать с паузой между пингами в 1 секунду.
(29) реально на прошлой работе выгребал тонны вопросов и предупреждений вставленых в проведение :),
а еще хранение таблиц и списков (со ссылками) в реквизите документа и справочника, и еще много чего.
человек который это написал к тому времени возомнил себя мего 1с ником и ушел внедрять УПП
(29) Ну утрировать-то зачем? Хотя да, если есть желание делать работу ради работы, то паузы в проведении - самое оно. Но если работа все-таки на результат и платят не за время, потраченное на доработку, а за эффективность, то паузы нужны только там, где они действительно нужны.
(29)нафига в проведнии пауза?
(30)тоже выгребал, но тем не менее (28)использую конечно не на сервере, не COM. а на клиенте где есть необходимость и естественно не в модуле проведения :-)
+(38) и ПодключитьОбработчикОжидания в этом случае самое то!
в идеале - наваять ВК, которая будет генерить ВнешнееСобытие каждый раз в заданном интервале и обрабатывать его через ОбработкаВнешнегоСобытия
(39) еще пару вещей типа службы для виндуса и назначенных заданий забыл. просто обработчик ожидания спасет.
(41) я такое ставил стремным контрагентам - которые обновлятся не хотели и на обслугу не брали - через полгода запускалась динамичноизменяемая задержка.
Базы тормозили
(7) Использовать обработчик ожидания, с вызовом каждые 30 секунд.
p.s. (25) - читал, не тыкайте. Там фуйня.
(41) А скажи мне, друг, в чет отличие такой задержки от пустого цикла на 100000 итераций?
Пожалуй, я сам отвечу: В том, что ты регулируешь длину задержки. И все. Загрузка CPU 100% никуда не девается, прикинь?
Ну флудеры. Я себя почувствовал ТСом из ветки про уничтожение инфы на хардах. Одинесеры разделились на два лагеря:
1) копрокодеров, которым положить, что проц загружается на 100% и нифига при этом не делает
2) Vbs, который делает все необходимое, не нагружает проц и реализовать в нем можно хоть лилового черта в малиновую крапинку(это я про ping, sleep, что_еще_такое_предлагали?)
p.s. Очень надеюсь вырваться в пятницу на миста-встречу в Москве на Бауманской, заодно и посмотрим друг на друга :)
(55) Все, я уже не адекватен, это истерика.
Модеры, закройте эту флудильню уже. Или потянем до пятницы и выставим в юмор?
(59)+(60) Ну попробуйте в обработчик ожидания параметры передавать. циклически меняющиеся. Очень занимательное занятие, могу сказать.
Сначала нужно вызвать:
ПодключитьСинтаксисПомощник()
потом:
ПодключитьОбработчикРазума()
ПодключитьПрямыеРуки()
ПодключитьОбработчикОжидания()
(68) Не-не-не, Дэвид Блэйн. ОбработчикОжидания - штука полезная и нужная, для некоторых вещей незаменимая. Но есть случаи, когда эта штука не работает или работает не так, как надо.
(70) Не так там все просто.
Допустим данных много и на клиент их тащить нет смысла - делаем так:
1. Получаем и кладем данные во временное хранилище, адрес в реквизит формы.
2. На клиенте подключаем обработчик ожидания в котором определяем процедуру
3. В процедуре вызываем серверную процедуру где берем из временного хранилища нужные данные и выводим на форму.
тьфу блин, инфы 60 строк, 5 страниц, 12 строк на каждой, 30 секунд.
ПриСозданииНаСервере
создаем страницы программно, таблицы на них тоже программно,
вызываем процедуру, которая получит данные и заполнит таблицы. Более сервер не дергаем, пока в этом нет необходимости.
ПриОткрытии
Подключаем обработчик ожидания, который будет переключать страницы.
Второй обработчик с таким интервалом с каким нужно обновлять данные (брать из базы)
(76) Тогда такой вопрос, предложенный в (6) вариант не работает - спотыкается на СоздатьОбъект("Текст"). Чем это можно заменить в 8.2.15.310?
(74) хорошо, хорошо, убедил.
(77) "СоздатьОбъект" - это из клюшек. В снеговике это выглядит как "Новый ".
клюшки - 7.7, снеговик - 8.х
(81) И не подумаю даже перепиливать, поскольку дома сделано на типовой, а на работе -на самодельной, и очень многое на эту самодельность завязано. А "для себя" решилось так:
ПриОткрытии
ПодключитьОбработчикОжидания(ОбновитьИнфу,30);
Конец
Вполне универсальный механизм, при условии, что есть возможность хранить информацию.
Для некоторых игры в реальном времени с активной паузой – тайна, покрытая мраком. Здесь мы попытаемся разобраться в деталях этой интересной игровой механики. Разнообразных механик существует довольно много, и некоторые из них гораздо популярнее остальных.
Что такое активная пауза?
Активная пауза – относительно нишевая механика, которая позволяет управлять в реальном времени с возможностью поставить игру на паузу и отдать команды своим персонажам.
Конечно, на паузу можно поставить практически любую игру. Почему же реальное время с паузой выделяется как отдельная механика? Ключевое отличие здесь в том, что активная пауза в таких играх – элемент геймплея, тогда как во всех остальных пауза используется лишь для того, чтобы сделать перерыв.
Активная пауза – своего рода компромисс между двумя более распространенными механиками: чистым реальным временем и пошаговым режимом. У нее есть определенные сходства с каждой из них и в то же время присутствуют уникальные черты, позволяющие выделять ее как отдельный подход.
Чем активная пауза отличается от чистого реального времени?
В реальном времени можно играть как с активной паузой, так и без нее – в конце концов, это все равно игра в реальном времени. В постоянном темпе без остановок. Например, сравните Starcraft с шахматами. В первом случае скорость игры неизменна, а во втором было бы невозможно играть, если бы оба игрока двигали свои фигуры, когда им захочется!
Однако, RTwP отличается от игр в чистом реальном времени тем, как она работает на паузе. Оба типа игр практически всегда можно поставить на паузу, но если в чистом реальном времени это нужно лишь для отдыха, то в случае RTwP ставить игру на паузу иногда просто необходимо.
Вся концепция игр в реальном времени с активной паузой построена вокруг периодических остановок и возобновлений игры для лучшего разрешения ситуации. Например, если в игре с активной паузой кто-то управляет группой героев, внезапно попавшей в засаду разбойников, это предполагает, что игрок остановит игру, чтобы разобраться, как поступить дальше.
В свою очередь, игры в чистом реальном времени не предполагают остановку действия, когда игрок сталкивается с превосходящими силами. В них отдание команд и даже перемещение камеры на паузе заблокировано.
Поэтому, пусть и в чистом реальном времени, и с активной паузой можно играть похожим образом, последние приветствуют использование паузы и позволяют вам управлять игрой даже тогда, когда она приостановлена. А в чистом реальном времени паузы предназначены лишь для отдыха и не являются элементом геймплея.
Чем активная пауза отличается от пошагового режима?
Как в пошаговых играх, так и в играх с активной паузой предполагается наличие времени для того, чтобы подумать и принять решение. В некоторых пошаговых играх вы можете обдумывать свой ход всю ночь.
Обе механики позволяют приостановить игру, чтобы разобраться с тактикой и выбрать наилучший вариант для хода. Однако, в ходе самого действия все меняется. При возобновлении игры с активной паузой она продолжается в реальном времени. Вы можете свободно управлять своими персонажами, пока не захотите вновь поставить игру на паузу.
В пошаговых играх интервалов реального времени нет. Игрок либо выполняет свои действия по одному, либо дает команды, исполняемые в свой ход.
Примеры игр с активной паузой
Одним из наиболее прославленных примеров игр в реальном времени с активной паузой можно назвать старые игры серии Baldur’s Gate. Эта система использовалась в первой и второй частях. Игрок мог управлять партией своих героев в реальном времени или во время паузы.
Это вызвало некоторое беспокойство, когда первые превью Baldur’s Gate 3 показали, что игра отказалась от своих корней с активной паузой и перешла к пошаговому геймплею. Ведущий разработчик Эдуард Имберт в своем интервью PC Gamer говорил:
Если вы хотите попробовать игры с активной паузой, то лучшие из них можно найти в жанрах RPG и стратегий. Они отлично раскрывают потенциал этой механики, которая позволяет вам сделать в игре перерыв и разобраться, как поступать дальше.
Если говорить об RPG, то любой поклонник жанра просто обязан оценить такие классические шедевры, как Planescape Torment. Если же вы хотите утолить свою жажду с более современной графикой, то для вас есть игры поновее, типа серии Pillars of Eternity, Tyranny, Pathfinder: Kingmaker и даже ремейка Final Fantasy VII.
Для любителей стратегий в качестве отличного примера использования механики реального времени с активной паузой вне ролевого жанра можно привести Europa Universalis и Hearts of Iron IV. В каждой из них вы управляете империей, которая развивается в реальном времени, но когда все становится сложно, вы можете остановить игру, чтобы задать очередь команд и приказов на постройку.
А если вы хотите найти что-то новое, то вот полный список игр в реальном времени с паузой, представленных в Steam.
Активная пауза – это не так сложно!
Если вас заинтересовали старые части Baldur’s Gate, то почему бы не устроить себе экскурс в историю? Baldur’s Gate определенно относится к тем старым играм для ПК, играть в которые стоит до сих пор, подобно Starcraft или Grim Fandango.
это группа ЧКФР, объединенных общими интересами (не глобального, а локального характера), которым необходима отдельная площадка для их обсуждения.
Создать сообщество может любой ЧКФР, состоящий в клубе не менее полугода.
Любой ЧКФР может вступить в любое сообщество или в несколько сообществ одновременно. Членство в сообществе позволяет участвовать в обсуждении тем сообщества.
всякие разные экшены для перевода в ЧБ я для себя сам написал, и в общем то доволен, но они или не предполагают коррекции в процессе работы (включил, и иди чай пить) и в некоторых случаях вылезут "косяки", или подфодят для работы с одной фотографией и соответственно большого прироста скорости при обработке сотен фотографий не дадут.
Вот такая закавыка
. А дальше нужна пауза в экшене, для того, чтобы можно было (если необходимо) по маске сделать несколько мазков кистью (чтобы соотв. детали в тенях и светах проявить).
Дальше жмешь продолжить, и экшен соединяет слои и сохраняет фотографию.
А что за проблема? Если нужна пауза в экшене, так поставьте ее. Если экшен выведен на кнопку, кнопка в паузе будет красной, закончитете мазюкать кистью, ткнете опять на эту кнопку и пойдет продолжение.
Фотограф Владимир Григорян писал(а):
при батче через скрипты надо снять с галку со стопов в применяемом экшене
Например - несколько экшенов.
Один запускаем, он кончается на кисточке - поелозили - второй пущщаем. Поелозили - третий и т.д.
Ваши отношения превратились в каждодневную борьбу, а желание остановиться не покидает голову? Не забудьте - паузы в отношениях имеют свои строгие правила.
Для начала успокойтесь, налейте себе вина и настройтесь на размышления. Эксперты предостерегают: шансы на то, чтобы помочь отношениям, составляют 50%. И это еще очень оптимистичные прогнозы!
Все последующие советы рекомендуются как окончательное решение для тех пар, у которых не остается выбора, либо для которых разрыв приведет к бесконечному потоку проблем и страданий. Стоит сказать, что пары, живущие под одной крышей несколько лет, или те, у которых есть дети, имеют больше шансов на восстановление былых отношений.
Если вы просто встречаетесь, связь будет намного легче рушиться. Чтобы попытаться сохранить отношения и предотвратить риск закончить все скандалом, следует выполнить следующие двенадцать рекомендаций:
1. Не бойтесь
2. Не шантажируйте
3. Определите причины
4. Совместная пауза
Никаких ультиматумов. Только разговор. Расставание должно быть результатом двустороннего согласия между партнерами. Если пауза принята совместно и осознанно, не являясь только вашим решением, шансов на продолжение отношений не так уж мало!
5. Определите срок
6. Внешняя помощь
Если вы чувствуете необходимость в помощи, не бойтесь обратиться к психологу. Психологи часто сталкиваются с подобными ситуациями, вместе вы определенно сможете найти ответы на тревожные вопросы. Причины обращения к специалисту могут быть совершенно разными. Мы знаем, какой стресс для организма несет принятие и осознание столь важных вещей. Но если вы чувствуете, начало бессонницы или других симптомов стресса - незамедлительно, то ищите помощь. Не несите этот груз на себе сами!
7. Сдерживайте страсти
Довольно часто случается так, что один из партнеров увлекается кем-то другим в период перерыва отношений. Это не самое приятное, что может быть и часто отпугивает нас еще до принятия решения о тайм-ауте.
И не напрасно. Остерегайтесь этого! Это действительно может создать черную дыру в ваших отношениях, и даже если вам удастся все восстановить – скорее всего та интрижка (пусть и несерьезная) не даст хороших результатов. Помните, что даже во время отстранения друг от друга вы не являетесь незнакомыми людьми. Пауза - не синоним разрыву.
8. Объясните детям
Это правило относится к тем парам, у которых уже есть детей. Согласитесь, что худшим вариантом для всех является то, когда каждый живет сам по себе, но притворяется, будто с детьми всё в порядке. Но не стоит заблуждаться, думая, что ребенок ничего не понимает и это не приносит ему страданий. Дети познают жизнь с помощью чувств, и все пропускают сквозь себя, накаленную обстановку дома они вмиг прочувствуют. Обманывая ребенка, вы обманываете себя, так что всегда будьте честны и не пытайтесь ничего спрятать.
Попытайтесь объяснить детям, что между между взрослыми произошло недопонимание, но вы любите их и будете любить так же сильно, как и всегда. Чтобы быть хорошими родителями, важно поддерживать детей и оставаться рядом с ними, даже если вы и ваш партнер взяли паузу в отношениях.
9. Никаких больших изменений
Не делайте поспешных решений. Не подавайте документы на развод, не переезжайте, не меняйте работу, не нужно продавать недвижимость… Во время тайм-аута больших изменений нет! Проживите это время привычными для вас буднями. Такого рода паузы в некоторых нюансах немного напоминают отношения на расстоянии, только без частого общения.
10. Границы сексуальной жизни
Запомните, если вдруг вам случится переспать с кем-то, держите это при себе. Это ваша совесть, ваш личный промах. Желание поделиться этим с партнером (будь то от сентиментальности, в порыве злости или подшофе) – ни к чему хорошему не приведет. Просто смиритесь, сделайте выводы и не повторяйте своей ошибки. Не причиняйте боль любимому человеку, особенно, если ему чужды концепции полиамории.
11. Всегда оставайтесь честны
Вы встретили кого-то во время перерыва и хотите начать новые отношения? Не ждите, не тяните и не распыляйтесь. Если у вас начинается новый этап в жизни, вы должны закончить предыдущий. Примите это. Не превращайте будущие новые отношения в скрытность и ложь, это приведет к очередным неприятностям. Не заставляйте других напрасно ждать и надеяться.
12. Подведите итоги
Пауза позади? Вы решили возобновить отношения? Отлично, вы поднимаете мрачную статистику разрывов отношений.
Но этого недостаточно, чтобы просто вернуться и начать все заново. Вам нужно подвести итоги, оценить раздельно прожитое время. Это необходимо для того, чтобы, оказавшись в былом окружении и ритме, не наступить на те же грабли, что вынудили взять паузу. Изменения должны быть отточены в вашей голове, приняты и осознаны обеими сторонами. И, внимание, они требуют дальнейшей работы! В противном случае, вы проделали напрасный путь длиною в месяцы.
Не забывайте: тайм аут – это не развод, не расставание. Не бойтесь, ступайте уверенно, будьте честны. Придерживайтесь простых, но очень важных правил и будьте счастливыми людьми!
Читайте также: