Flex——IDispose½Ó¿Ú
ǰÑÔ
C/C++µÄ¿ª·¢£¬ÄÚ´æµÄ¹ÜÀíÊÇÊ®·ÖÖØÒªµÄ¿ÎÌ⣬·ÖÅäÄÚ´æÊ¹ÓúóÒª¼°Ê±ÊÍ·Å£¬·ñÔòÄÚ´æÐ¹Â©µ¼ÖÂÄÚ´æºÄ¾¡¡£½øÈëÍйܻ·¾³ºó£¬ÄÚ´æÄܹ»×Ô¶¯¹ÜÀíºÍ»ØÊÕ£¬ÒѾ²»Óÿª·¢ÕßÌ«²ÙÐÄÄÚ´æ¹ÜÀí·½ÃæµÄÎÊÌâÁË£¬ÔÚÍйܻ·¾³£¬¿ª·¢ÕßÈÔÈ»¿ÉÒÔ×öһЩ¹¤×÷£¬ÌṩÄÚ´æ»ØÊÕµÄЧÂÊ£¬ÀýÈ磬°ÑÀàÄÚ²¿µÄÒýÓöÔÏóÉèÖÃΪnullÊÇ×î»ù±¾µÄ¡£½è¼øÔÚ.net»·¾³ÏµÄIDisposeģʽ£¬ÏÖÔÚ£¬ÔÚFlex/AS3ÀïʵÏÖ¡£
IDispose½Ó¿Ú
Ê×Ïȶ¨Òå¿ØÖÆ×ÊÔ´ÊͷŵĽӿڡ£
package cwn.core
{
/*
* ÊÍ·Å×ÊÔ´½Ó¿Ú
*/
public interface IDispose
{
function Dispose():void;
}
}
ʵÏÖIDispose½Ó¿Ú
public class ClassA implements cwn.core.IDispose
{
private var _RefObject:Object;//ÒýÓø߼¶¶ÔÏó
public function ClassA()
{
}
private var _Disposed:Boolean = false;//ÊÍ·Å¿ØÖƱêÖ¾
protected function Disposing():void
{
}
public function Dispose():void
{
if (_Disposed)
return;
Disposing();//ÊÍ·ÅÅÉÉúÀàµÄ×ÊÔ´
_RefObject = null; //ÊÍ·ÅClassA×ÊÔ´
}
}
Disposing·½·¨ÊÇÅÉÉúÀàÊÍ·Å×ÊԴʱ°´ÐèÒªÖØÐ´µÄ£¬ÀýÈçÏÂÃæµÄClassB
public class ClassB extends ClassA
{
private var _RefObject2:Object;
public function ClassB()
{
super();
}
override protected function Disposing():void
Ïà¹ØÎĵµ£º
µÇÂ½Ò³Ãæ
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" >
<mx:Script>
<![CDATA[
import mx.messaging.messages.HTTPRequestMessage;
import mx.rpc.http.HTTPService;
import mx. ......
==============flex===========
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="Service.GetCustomers.send();" width="689" height="592">
<mx:WebService id="Service" wsdl="ht ......
Flex
ÊÇÒ»¸ö¿ªÔ´µÄÓ¦Óÿª·¢¿ò¼Ü£¬ÓÃÀ´¹¹½¨ÔËÐÐÔÚweb£¨Ê¹Óà Flash Player£©»òÕß×ÀÃæÉÏ£¨Ê¹ÓÃAdobe
AIR£©µÄ¸»InternetÓ¦Óá£AdobeµÄFlex¿ª·¢ÕßÖÐÐÄÓÐһƪÎÄÕÂÌÖÂÛÁ˹ØÓÚFlexÐÔÄܵÄ×î¼Ñʵ¼ù£¬°üÀ¨ÁËÈÝÆ÷µÄʹÓÃϸ½Ú£ºFlex×î´óµÄ
ÐÔÄÜ·çÏÕÀ´×ÔÓÚ¶ÔÈÝÆ÷µÄÀÄÓá£ÔÚAdobe FlexÖÐÓдóÁ¿¿ÉÑ¡µÄÌØÐÔ£¬ÄãÓ¦¸Ã¿¼ÂÇÔÚÄãµÄÓ¦ÓÃÖÐʹÓÃËüà ......
flex¿Ø¼þ¶ÔÏó¡¢RemoteObjectµÈ¶¼ÓÐÒ»¸ö¹²Í¬µÄ·½·¨addEventListener¡£
addEventListener·½·¨ÈçÏ£º
public function addEventListener(type:String, listener:Function,
useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
{
eventDispatcher.addEventListener(type, listener, us ......