Новые книги

Эта книга поможет вам быстро создать свой бизнес. Независимо от того, есть ли у вас собственное дело или вы только собираетесь начать его, она даст вам надежный ренет ускорения.

Задумайтесь о следующем: что, если бы вы могли осуществить выведение своего продукта на рынок подобно Apple или крупной голливудской студии? Что. если бы ваши потенциальные покупатели считали бы дни до того момента, когда они смогут купить ваш продукт? Что, если бы вы смогли обеспечить себе такое прочное позиционирование на вашем рынке, которое почти бы полностью устранило для вас конкуренцию? И вы могли бы делать все это, независимо от того, каким бы скромным ни был ваш бизнес или ваш бюджет?

Теперь вопрос заключается в следующем – вы в самом деле собираетесь начать работать медленно и вскоре угаснуть? Или же вы готовы осуществить старт; который изменит будущее вашего бизнеса и вашу жизнь?

Права на издание получены по соглашению с Morgan James Publishing. Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
Регулярные колебания спроса, называемые сезонностью, случаются в любом виде бизнеса. Эта книга – источник идей, которые будут зарабатывать деньги для вашей компании в период традиционного спада продаж.

В основу издания положены примеры бизнеса как из области В2В, так и из области В2С, сезонные спады которых могут не совпадать. Авторские приемы борьбы со спадом подробно проиллюстрированы и описаны для каждой сферы бизнеса.

Книга подойдет руководителям и собственникам бизнеса, а также тем, кто только собирается открыть собственное дело; руководителям и менеджерам отделов продаж, маркетинга, рекламы и PR.

Одновременные события. Синхронизация

2.5.4. Одновременные события. Синхронизация

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

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

Рис. 2.50. Диаграмма состояний составного объекта (подсистемы)

Если синхронизирующее событие вырабатывается вне синхронизируемого объекта, оно может быть передано ему из другого объекта; на диаграмме это обозначается как показано на рисунке 2.51.

Рис. 2.51. Передача события из одного объекта другому

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

Синхронизация используется и в случае, когда в каком-либо состоянии требуется параллельно выполнить несколько активностей. В качестве примера рассмотрим устройство вывода ATM (рисунок 2.52). Оно одновременно (параллельно) выдает наличные деньги и карточку; обе эти операции можно рассматривать как составную активность, состоящую из двух параллельно работающих активностей (пунктирная линия на диаграмме состояний делит состояние на две области, в каждой из которых выполняется одна из указанных активностей). Разделение управления на два параллельных потока схематически показано в виде стрелки, которая разделяется на две: событие готов вызывает переход из состояния установка сразу в два параллельных подсостояния состояния выдача; переход в следующее состояние происходит по двум событиям деньги взяты и карточка взята; если какое-либо из этих событий произойдет раньше другого, перехода все равно не будет, пока не произойдет и второе событие (в этом и состоит синхронизация).

Рис. 2.52. Синхронизация в подсистеме

Из рассмотренного примера видно, что в различных состояниях может параллельно работать разное число процессов (активностей).

Назад | Содержание | Вперед