flex共享物件

2021-08-31 14:49:10 字數 1725 閱讀 7092

1、什麼是共享物件:

sharedobject(共享物件)可以看作是小型的資料庫,它用來儲存任何flash支援的資料型別,比如數字、字串、陣列和物件等等。

sharedobject按存放位置可分為本地型(存在客戶端)和遠端型(存在伺服器端)。本地型共享物件的擴充套件名為.sol。

本地型共享物件只能將資料儲存在預設路徑下,而且副檔名只能是.sol。

在網上有看到說該方法受檔案大小的限制,最大為1k,但經過反覆實驗發現,該方法並不受檔案大小限制。

2、如何建立乙個本地型共享物件:

要建立乙個sharedobject物件,可以使用sharedobject.getlocal()方法,語法如下:

sharedobject.getlocal("objectname" [, pathname]): sharedobject

下列例子建立了乙個叫做sobj的本地型共享物件:

private var sobj:sharedobject = sharedobject.getlocal("hello");

這將在客戶端建立乙個叫做hello.sol的檔案,sobj就是本地型共享物件。

3、關於sharedobject類

使用sharedobject類,你可以建立和刪除共享物件。sharedobject類主要包含下列屬性和方法:

屬性 描述

data 描述了共享物件儲存的屬性集合的唯讀屬性

onstatus 共享物件的事件處理器

方法 描述

clear() 刪除sharedobject中的所有資料,並且從磁碟中刪除sharedobject的所有屬性。

flush() 立即向客戶端寫入sharedobject

getlocal() 返回客戶端域定義的本地共享物件的引用。如果不存在共享物件,這個方法將建立乙個新的共享物件。

getsize() 獲得共享物件檔案的大小。預設上線是100k,如果客戶端允許,還可以更大。

4、共享物件與cookie:

共享物件功能就像瀏覽器的cookie。你可以使用sharedobject類來在使用者的本地磁碟上儲存資料,並且在當前的會話或之後的會話中呼叫那些資料。

程式祝你能訪問它們自己的sharedobject資料,並且只能在他們欲行在相同的域的時候可以。

這些資料不會被傳送到伺服器,並且不能被執行在其他域下的flex曾需訪問,但是可以來自同一域中的flex程式訪問。

比較共享物件與cookie

cookie和共享物件都非常簡單。因為大多數web程式設計師都很熟悉cookie的工作原理,這有助於對比cookie和本地共享物件。

cookie遵循rfc 2109標準生成,並且擁有下列屬性:

它們可以過期,通常預設在會話結束時過期;

它們可以被禁用;

最多可以有300個cookie,並且每個站點最多可以有20個cookie;

每個cookie通常被限制在4k大小;

某些情況下,它們會被認為是安全隱患,因而在客戶端被禁用;

它們儲存在由客戶端瀏覽器指定的位置;

它們通過http協議從客戶端傳遞到伺服器。

作為比照,共享物件有如下屬性:

預設情況下不會過期;

預設情況下,它們被限定在每個100k大小;

它們可以儲存簡單資料型別(例如string,array和date);

它們被儲存在由程式定義的位置(在使用者的主目錄下);

它們永遠不會從客戶端傳遞到伺服器。

核心物件共享

1 通過 控制代碼繼承 實現核心物件的共享 父程序 include stdafx.h include define max buffer size 2048 int main int argc,char argv lpfilebuffer heapalloc getprocessheap 堆控制代碼...

物件的共享

記憶體可見性 多執行緒訪問共享資料,乙個執行緒的修改,其他執行緒是否能做得到通知。每個執行緒都有自己的工作記憶體,其中包含了共享資料的拷貝,寫執行緒僅僅是更新了自己工作記憶體的資料拷貝,如果該拷貝沒有更新到主存,那麼其他執行緒不會知道該更新,就是說該更新對其他執行緒是不可見的。public clas...

物件的共享

一 記憶體可見性 在沒有同步的情況下,編譯器 處理器以及執行時等都可能對操作的執行順序進行一些意想不到的調整。在缺乏足夠同步的多執行緒程式中,要想對記憶體操作的執行順序進行判斷,幾乎無法得出正確的結論。使用volatile修飾的變數,最低安全性適合於絕大多數的變數,非volatile型別的64位數值...