Referência do ActionScript® 3.0 para Adobe® Flash® Platform
Início  |  Ocultar listas de Pacotes e Classes |  Pacotes  |  Classes  |  Novidades  |  Índice  |  Apêndices  |  Por que inglês?
Filtros: AIR 30.0 e anterior, Flash Player 30.0 e anterior, Flash Lite 4
Flex 4.6 e anterior, Flash Pro CS6 e anterior
Ocultar filtros
flash.system 

MessageChannel  - AS3

Pacotesx

Nível superior
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementos de linguagem

Constantes globais
Funções globais
Operadores
Instruções, palavras-chave e diretivas
Tipos especiais

Apêndices

Novidades
Erros do compilador
Avisos do compilador
Erros de runtime
Migrando para o ActionScript 3
Conjuntos de caracteres suportados
Tags MXML apenas
Elementos XML de movimento
Marcas de texto cronometradas
Lista de elementos deprecados
Constantes de Implementação de Acessibilidade
Como Usar Exemplos do ActionScript
Aspectos jurídicos
Pacoteflash.system
Classepublic final class MessageChannel
HerançaMessageChannel Inheritance EventDispatcher Inheritance Object

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

A classe MessageChannel fornece um mecanismo para um worker se comunicar com outro worker. Um canal de mensagem é um canal de comunicação unidirecional. O worker enviado pelo canal de mensagem utiliza o canal de mensagem para enviar objetos ao worker destinatário. Um objeto MessageChannel é o único modo de enviar uma mensagem entre workers que enviam eventos, indicando ao destinatário que a mensagem está disponível. Outros mecanismos para compartilhamento de dados permitem que um valor seja definido, mas não fornecem um evento para notificar você dos dados alterados.

Cada objeto MessageChannel contém uma fila de objetos de mensagens enviadas do worker de envio ao worker de destino. Cada chamada para o send() adiciona um objeto à fila. Cada chamada ao receive() recupera o objeto de mensagem mais antigo da fila.

Não é possível criar instâncias MessageChannel fazendo uma chamada para o construtor MessageChannel(). Para criar uma instância MessageChannel, faça uma chamada para o método createMessageChannel() do objeto Worker que enviará mensagens ao canal, passando o objeto Worker como um argumento.

O fluxo de trabalho típico para enviar mensagens com o objeto MessageChannel é da seguinte maneira:

  1. Faça uma chamada ao método createMessageChannel() do worker de envio para criar o canal de mensagem.

        // In the sending worker swf
        var sendChannel:MessageChannel;
        sendChannel = Worker.current.createMessageChannel(receivingWorker);
  2. Passe o canal de mensagem ao outro worker, efetuando uma chamada para Worker.setSharedProperty() ou enviando-o través de um canal de mensagem existente.

        receivingWorker.setSharedProperty("incomingChannel", sendChannel);
  3. Código no worker de destino registra um ouvindo com o objeto MessageChannel para o evento channelMessage

        // In the receiving worker swf
        var incomingChannel:MessageChannel;
        incomingChannel = Worker.current.getSharedProperty("incomingChannel");
        incomingChannel.addEventListener(Event.CHANNEL_MESSAGE, handleIncomingMessage);
  4. Código no worker de envio envia uma mensagem efetuando uma chamada ao método send()

        // In the sending worker swf
        sendChannel.send("This is a message");
  5. O runtime efetua uma chamada ao gerenciador do evento no código do worker de destino, indicando que a mensagem foi enviada

        // In the receiving worker swf
        // This method is called when the message channel gets a message
        private function handleIncomingMessage(event:Event):void
        {
            // Do something with the message, as shown in the next code listing
        }
  6. Código no worker de destino efetua uma chamada ao método receive() para obter a mensagem O objeto retornado pelo método receive() possui o mesmo tipo de dados do objeto passado ao método send().

        var message:String = incomingChannel.receive() as String;

Além do fluxo de trabalho assíncrono descrito acima, você pode utilizar um fluxo de trabalho alternativo com o métodoreceive() para pausar o código no worker de destino e esperar até que a mensagem seja enviada. Veja a descrição do método receive() para obter mais informações.

A classe MessageChannel é um dos tipos de objeto especial compartilhado entre os workers, em vez de copiados entre eles. Quando você passa um canal de mensagem de um worker a outro efetuando uma chamada ao método setSharedProperty() do objeto do Worker ou usando um canal MessageChannel, ambos os workers têm referência ao mesmo objeto MessageChannel na memória do runtime.

Elementos da API relacionados



Propriedades públicas
 PropriedadeDefinido por
 Inheritedconstructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto.
Object
  messageAvailable : Boolean
[somente leitura] Indica se a MessageChannel possui uma ou mais mensagens do worker de envio em sua fila interna de mensagens.
MessageChannel
  state : String
[somente leitura] Indica que o estado atual do objeto MessageChannel (abrir, fechando ou fechar).
MessageChannel
Métodos públicos
 MétodoDefinido por
  
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
[substituir] Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento.
MessageChannel
  
Instrui o MessageChannel atual para ser fechado depois que todas as mensagens forem recebidas.
MessageChannel
 Inherited
Envia um evento para o fluxo de eventos.
EventDispatcher
 Inherited
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento.
EventDispatcher
 Inherited
Indica se um objeto tem uma propriedade especificada definida.
Object
 Inherited
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro.
Object
 Inherited
Indica se a propriedade especificada existe e é enumerável.
Object
  
receive(blockUntilReceived:Boolean = false):*
Recupera um objeto de mensagem único da fila de mensagens enviado através deste canal de mensagens.
MessageChannel
  
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
[substituir] Remove um ouvinte do objeto EventDispatcher.
MessageChannel
  
send(arg:*, queueLimit:int = -1):void
Envia um objeto a partir do worker de envio, adicionando-o à fila da mensagem ao worker de destino.
MessageChannel
 Inherited
Define a disponibilidade de uma propriedade dinâmica para operações de repetição.
Object
 Inherited
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade.
Object
  
[substituir] Retorna a representação de string do objeto especificado.
MessageChannel
 Inherited
Retorna o valor primitivo do objeto especificado.
Object
 Inherited
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado.
EventDispatcher
Eventos
 Evento Resumo Definido por
 Inherited[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR ganha o foco do sistema operacional e está se tornando inativo.EventDispatcher
  Enviado cada vez que o worker de envio efetuar uma chamada a este método send() do objeto MessageChannel, indicando que um novo objeto de mensagem está disponível na fila da instância do MessgeChannel.MessageChannel
  Enviado quando o valor da propriedade do estado do canal de mensagem é alterado.MessageChannel
 Inherited[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR perde o foco do sistema operacional e está se tornando inativo.EventDispatcher
Detalhes da propriedade

messageAvailable

propriedade
messageAvailable:Boolean  [somente leitura]

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Indica se a MessageChannel possui uma ou mais mensagens do worker de envio em sua fila interna de mensagens.



Implementação
    public function get messageAvailable():Boolean

state

propriedade 
state:String  [somente leitura]

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Indica que o estado atual do objeto MessageChannel (abrir, fechando ou fechar). Os possíveis valores para esta propriedade são definidos como constantes na classe MessageChannelState.



Implementação
    public function get state():String

Elementos da API relacionados

Detalhes do método

addEventListener

()método
override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. Você pode registrar ouvintes de eventos em todos os nós da lista de exibição de um tipo específico de evento, fase e prioridade.

Depois de registrar um ouvinte de evento com êxito, não será possível alterar a respectiva prioridade por meio de chamadas adicionais para o addEventListener(). Para alterar a prioridade de um ouvinte, chame primeiramente o removeListener(). Em seguida, você poderá registrar o ouvinte novamente com o novo nível de prioridade.

Tenha em mente que, após o ouvinte ser registrado, chamadas subsequentes para o addEventListener() com um valor type ou useCapture diferente resultarão na criação de um registro de ouvinte separado. Por exemplo, se você primeiro registrar um ouvinte com o useCapture definido como true, ele escutará apenas durante a fase de captura. Se você chamar o addEventListener() novamente, usando o mesmo objeto de ouvinte, mas com o useCapture definido como false, você terá dois ouvintes distintos: um que escuta durante a fase de captura e outro que escuta durante as fases de destino e de bubbling.

Você não pode registrar um ouvinte de evento apenas para a fase de destino ou a fase de bubbling. Essas fases são emparelhadas durante o registro porque o bubbling se aplica apenas aos ancestral do nó-alvo.

Se você não precisar mais de um ouvinte de evento, remova-o, chamando o removeEventListener(); do contrário, poderão ocorrer problemas de memória. Os ouvintes de evento não são retirados automaticamente da memória porque o coletor de lixo não remove o ouvinte enquanto o objeto de despacho existe (a menos que o parâmetro useWeakReference seja definido para true).

Copiar uma ocorrência do EventDispatcher não copia os ouvintes de eventos a ele anexados. (Se o seu recém-criado nó precisar de um ouvinte de evento, anexe o ouvinte após criar o nó). Entretanto, se você mover uma ocorrência do EventDispatcher, os ouvintes de evento anexados se movimentarão com ele.

Se o ouvinte de evento estiver sendo registrado em um nó enquanto um evento estiver sendo processado nesse nó, o ouvinte de evento não será disparado durante a fase atual, mas poderá ser disparado durante uma fase posterior no fluxo de eventos, como a fase de bubbling.

Se um ouvinte de evento for removido de um nó enquanto um evento estiver sendo processado no nó, ele ainda será disparado pelas ações atuais. Depois de removido, o ouvinte de evento nunca mais é chamado novamente (a menos que registrado mais uma vez para processamento futuro).

Parâmetros

type:String — O tipo de evento.
 
listener:Function — A função de ouvinte que processa o evento. Esta função deve aceitar um objeto Event como seu único parâmetro e não deve retornar nada, como mostra este exemplo:
function(evt:Event):void

A função pode ter qualquer nome.

 
useCapture:Boolean (default = false)Determina se o ouvinte trabalha na fase de captura ou nas fases de destino e bubbling. Se useCapture for definido como true, o ouvinte processará o evento apenas durante a fase de captura e não na fase de destino nem de bubbling. Se useCapture for false, o ouvinte processará o evento apenas durante a fase de destino ou de bubbling. Para ouvir o evento em todas as três fases, chame o addEventListener duas vezes, uma vez com o useCapture definido como true, e novamente, com o useCapture definido como false.
 
priority:int (default = 0) — O nível de prioridade do ouvinte de evento. A prioridade é designada por um número inteiro de 32 bits sem sinal. Quanto mais alto o número, maior a prioridade. Todos os ouvintes com prioridade n são processados antes dos ouvintes com prioridade n-1. Se dois ou mais ouvintes compartilham a mesma prioridade, eles são processados pela ordem segundo a qual foram adicionados. A prioridade padrão é 0.
 
useWeakReference:Boolean (default = false) — Determina se a referência ao ouvinte é forte ou fraca. Uma referência forte (a padrão) impede que o ouvinte seja coletado como lixo. Uma referência fraca não impede.

Funções de membro de nível de classe não estão sujeitas à coleta de lixo, portanto, você pode definir useWeakReference como true para funções de membro de nível de classe sem sujeitá-las à coleta de lixo. Se você definir useWeakReference como true para um ouvinte que seja uma função interna aninhada, a função será sujeita à coleta de lixo e não mais será persistente. Se você criar referências à função interna (salve-a em outra variável), então ela não ficará sujeita à coleta de lixo e permanece persistente.

close

()método 
public function close():void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Instrui o MessageChannel atual para ser fechado depois que todas as mensagens forem recebidas.

Quando efetuar uma chamada a este método, não será possível efetuar chamadas ao método send() para adicionar mensagens à fila. A chamada send() apresentará falha e retornará o valor false.

Você também poderá apenas efetuar chamadas ao método receive() para receber mensagens que já estão em espera na fila. Se a fila estiver vazia, a chamada receive() retornará o valor null.


Eventos
channelState:Event — enviado quando o método close() é chamado (o que define a propriedade state para MessageChannelState.CLOSING). Enviado novamente quando todas as mensagens foram recebidas e a propriedade state estiver definida para MessageChannelState.CLOSED.

receive

()método 
public function receive(blockUntilReceived:Boolean = false):*

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Recupera um objeto de mensagem único da fila de mensagens enviado através deste canal de mensagens.

Cada vez que o código do worker de envio fizer uma chamada ao método send() do objeto MessageChannel, um único objeto será adicionado à fila de mensagens interna do canal de mensagem. Estes objetos ficam empilhados na fila até que sejam removidos um de cada vez, pelo worker de destino chamando o método receive(). Os objetos de mensagem são recebidos na ordem em que são enviados.

Para verificar se a fila contém um objeto de mensagem a ser recebido, utilize a propriedade messageAvailable.

Nos casos comuns, o objeto transformado em send() é transformado em uma série de formato AMF3. Quando é removido da fila pela chamada receive() é removido da série e transformado em um objeto ActionScript (uma cópia do objeto original) no worker de destino e o worker recebe uma referência àquela cópia. Certos tipos de objetos são compartilhados entre workers em vez de copiados. Neste caso, o objeto obtido pelo worker de destino é uma referencia ao objeto compartilhado, em vez de uma nova cópia do objeto. Para obter mais informações sobre este caso, consulte a descrição do método send().

O comportamento do método pode ser alterado se a fila de mensagem estiver vazia e você transmitir true ao parâmetro blockUntilReceived. Neste caso, o worker pausa seu thread de execução na chamada receive() e não executa mais códigos. Quando o worker de envio efetuar uma chamada ao send(), a chamada ao receive() será concluída ao receber a mensagem. O worker, então, retoma a execução do código na próxima linha do código seguindo a chamada recebida.

Parâmetros

blockUntilReceived:Boolean (default = false) — indica se o thread de execução do worker deve receber um objeto de mensagem e, então, continuar a execução (false) ou se deve pausar na chamada receive() e esperar que a mensagem seja enviada se a fila estiver vazia (true)

Retorna
* — uma cópia do objeto transformado no método send() pelo worker de envio. Se o objeto for um dos tipos especiais compartilhados entre os workers, o valor retornado será uma referência ao objeto compartilhado, em vez de uma cópia dele. Se nenhuma mensagem estiver disponível na fila, o método retornará null.

Lança
IOError — se o canal estiver fechado no momento em que o método for chamado ou se o argumento blockUntilReceived resultar em uma execução sendo pausada e o canal for, então, fechado por outro worker.
 
ArgumentError — se o código de chamada não estiver no worker de destino
 
ScriptTimeoutError — se o método for chamado a partir do código no worker primário no Flash Player e o argumento blockUntilReceived fizer com que o worker seja pausado por mais tempo que o limite de tempo do script (15 segundos por padrão)

Elementos da API relacionados

removeEventListener

()método 
override public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Remove um ouvinte do objeto EventDispatcher. Se não existir um ouvinte correspondente registrado com o objeto EventDispatcher, uma chamada para esse método não terá efeito.

Parâmetros

type:String — O tipo de evento.
 
listener:Function — O objeto de ouvinte a remover.
 
useCapture:Boolean (default = false)Especifica se o ouvinte foi registrado na fase de captura ou nas fases de destino e bubbling. Se o ouvinte foi registrado para as fases de destino e de bubbling, duas chamadas para o removeEventListener() serão necessárias para remover as duas, uma chamada com o useCapture() definido como true e outra chamada com o useCapture() definido como false.

send

()método 
public function send(arg:*, queueLimit:int = -1):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Envia um objeto a partir do worker de envio, adicionando-o à fila da mensagem ao worker de destino.

O objeto passou ao parâmetro arg pode ser qualquer objeto. Diferentemente das exceções descritas abaixo, qualquer objeto transmitido ao parâmetro arg não é transmitido por referência. Qualquer alteração feita no objeto em um worker após a chamada ao send() não é transportada ao outro worker. O objeto é copiado quando é criado em série ao formato AMF3 e removido da série em um novo objeto, no worker de destino quando o receive() é chamado. Por este motivo, qualquer objeto que puder ser criado em série em um formato AMF3, incluindo os objetos em exibição, não podem ser transmitidos ao parâmetro arg. Para transmitir de forma adequada uma classe personalizada, a definição da classe pode ser registrada usando a função flash.net.registerClassAlias() ou o metadado [RemoteClass]. Com tais técnicas, o mesmo alias pode ser usado para ambas as versões do worker da classe.

Há cinco tipos de objetos que uma exceção à regra de que os objetos não são compartilhados entre os workers:

  • O trabalhador 
  • MessageChannel
  • ByteArray compartilhável (um objeto ByteArray com a propriedade shareable definida como true
  • Mutex
  • Condição

Se você transmitir uma instância destes objetos ao parâmetro arg, cada worker terá uma referência ao mesmo objeto adjacente. As alterações feitas a uma instância em um worker são imediatamente disponíveis em outros workers. Além disso, se você transportar a mesma instância desses objetos mais de uma vez usando send(), o runtime não criará uma nova cópia do objeto no worker de destino. Em vez disso, a mesma referência é reutilizada, reduzindo o uso da memória do sistema.

Por padrão, este método adiciona o objeto à fila e imediatamente retorna, continuando em execução com a próxima linha de código. Se você deseja impedir que a fila cresça além de determinado tamanho, você pode usar o parâmetro queueLimit para especificar o número máximo de itens permitidos na fila. Se, no momento da chamada ao send(), o número de itens na fila é superior ao limite especificado, o worker pausa o thread de execução na chamada ao send(). Quando o worker de destino chamar receive() uma quantidade de vezes suficiente para que o tamanho da fila seja inferior ao limite da fila especificado, a chamada ao send() será concluída. O worker, então, continua a execução na próxima linha do código.

Parâmetros

arg:* — o objeto a ser adicionado à fila da mensagem
 
queueLimit:int (default = -1) — o número máximo de objetos de mensagem que a fila de mensagem pode conter. Se a fila contiver mais objetos que o limite permitido, o worker de envio pausa a execução até que as mensagens sejam recebidas e o tamanho da fila diminui para abaixo do seu limite.


Eventos
channelMessage:Event — enviado para notificar o worker de destino que um objeto de mensagem está disponível na fila

Lança
IOError — se o canal estiver fechado no momento em que o método for chamado ou se o argumento queueLimit resultar em uma execução sendo pausada e o canal for, então, fechado por outro worker.
 
ArgumentError — se o código de chamada não estiver no worker de envio
 
ScriptTimeoutError — se o método for chamado a partir do código no worker primário no Flash Player e o argumento queueLimit fizer com que o worker seja pausado por mais tempo que o limite de tempo do script (15 segundos por padrão)

Elementos da API relacionados

toString

()método 
override public function toString():String

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Retorna a representação de string do objeto especificado.

Nota: os métodos da classe Object são dinamicamente criados no protótipo de Object. Para redefinir esse método em uma subclasse de Object, não use a palavra-chave override. Por exemplo, uma subclasse de Object implementa function toString():String em vez de usar uma substituição da classe base.

Retorna
String — Uma representação de string do objeto.
Detalhe do evento

channelMessage

Evento
Tipo do objeto de evento: flash.events.Event
propriedade Event.type = flash.events.Event.CHANNEL_MESSAGE

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Enviado cada vez que o worker de envio efetuar uma chamada a este método send() do objeto MessageChannel, indicando que um novo objeto de mensagem está disponível na fila da instância do MessgeChannel.

A constante Event.CHANNEL_MESSAGE define o valor da propriedade type de um objeto de evento channelMessage.

Esse evento tem as seguintes propriedades:

PropriedadeValor
bubblesfalse
cancelablefalse; não há comportamento padrão a ser cancelado.
currentTargetO objeto que está processando ativamente o objeto Event com um ouvinte de evento.
targetO objeto que despachou este evento.

channelState

Evento  
Tipo do objeto de evento: flash.events.Event
propriedade Event.type = flash.events.Event.CHANNEL_STATE

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.4, AIR 3.4

Enviado quando o valor da propriedade do estado do canal de mensagem é alterado.

A constante Event.CHANNEL_STATE define o valor da propriedade type de um objeto de evento channelState.

Esse evento tem as seguintes propriedades:

PropriedadeValor
bubblesfalse
cancelablefalse; não há comportamento padrão a ser cancelado.
currentTargetO objeto que está processando ativamente o objeto Event com um ouvinte de evento.
targetO objeto que despachou este evento.




[ X ]Por que inglês?
O conteúdo na Referência do ActionScript 3.0 aparece em inglês

Nem todas as partes da Referência do ActionScript 3.0 estão traduzidas em todos os idiomas. Quando um elemento de um idioma não está traduzido, ele é exibido em inglês. Por exemplo, a classe ga.controls.HelpBox não está traduzida em nenhum idioma. Por isso, na versão da referência em português do Brasil, a classe ga.controls.HelpBox é exibida em inglês.