成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET線程安全與靜態變量的生命周期淺談

開發 后端
ASP.NET線程安全涉及的是什么呢?ASP.NET線程安全應該注意什么呢?那么本文就將在這幾個方面向你介紹,

ASP.NET線程安全所涉及的是什么呢?讓我們先來看看靜態變量的生命周期問題,下面是我理解的靜態變量的生命周期:

void Application_Start開始

void Application_End結束的,本來這就是對的

今天要做一個全局的應用,想確認一下,在網上一找,我的天,說什么的都有

大概分三種

1.Application_Start——Application_End

2.Session_Start——Session_End

3.類生命周期結束

我用4個機器做了一個測試發現靜態變量值一直是不變的,并沒有因為其它用戶登錄而被銷毀,確認應該是Application級的

靜態類在***訪問時會調用靜態構造器創建類類型對象,類型對象的生存周期是整個應用程序域的生存周期,也就說被訪問過的靜態類,只有它所在的應用程序域被卸載時才會被卸載。

類的成員分為兩類,靜態成員(static member)和實例成員(instance member)。靜態成員屬于類,實例成員則屬于對象,即類的實例。

簡單討論一下在一個類中使用靜態字段(static field)和靜態方法(static method)是否會有線程安全問題。

我們在知道, 靜態字段(static field)和靜態方法(static method)的調用是通過類來調用。靜態方法不對特定的實例操作,只能訪問靜態成員。實例方法可對特定的實例操作,既能訪問靜態成員,也能訪問實例成員。

那么,在多線程中使用靜態方法是否有ASP.NET線程安全問題?這要看靜態方法是是引起ASP.NET線程安全問題要看在靜態方法中是否使用了靜態成員。

因為,在多線程中使用同一個靜態方法時,每個線程使用各自的實例字段(instance field)的副本,而共享一個靜態字段(static field)。所以說,如果該靜態方法不去操作一個靜態成員,只在方法內部使用實例字段(instance field),不會引起安全性問題。但是,如果該靜態方法操作了一個靜態字段,則需要靜態方法中采用互斥訪問的方式進行安全處理。

舉個簡單的例子,我們使用的Console.WriteLine();中WriteLine()是Console.WriteLine類的靜態方法。

對于ASP.NET線程安全中, 多個客戶端訪問服務器端, 這是一個多線程的例子.只要理解了原因,我們可以在三層架構中的數據訪問層中放心使用靜態方法(static method)來訪問數據庫.

靜態方法如果沒有使用靜態變量,則沒有線程安全問題。

為什么呢?因為靜態方法內聲明的變量,每個線程調用時,都會新創建一份,而不會共用一個存儲單元。每個線程都會創建自己的一份,因此不會有線程安全問題

注意,靜態變量,由于是在類加載時占用一個存儲區,每個線程都是共用這個存儲區的,所以如果在靜態方法里使用了靜態變量,這就會有線程安全問題!

ASP.NET線程安全及靜態變量生命周期就向你介紹到這,希望對你理解ASP.NET線程安全和靜態變量生命周期有所幫助。

【編輯推薦】

  1. ASP.NET緩存分析和實踐淺析
  2. ASP.NET數據庫緩存淺析
  3. ASP.NET源碼之自定義控件DateTimePicker
  4. ASP.NET文件下載函數使用淺析
  5. 構建ASP.NET線程安全集合淺析
責任編輯:仲衡 來源: cnblogs
相關推薦

2009-08-04 16:05:15

ASP.NET頁面生命

2009-07-23 10:23:44

2009-07-20 10:33:02

ASP.NET MVC

2013-04-07 10:42:56

Asp.Net頁面周期

2009-07-23 18:14:17

MVC生命周期

2009-08-04 16:50:15

ASP.NET頁面生命

2009-07-31 10:47:18

ASP.NET頁面生命

2009-08-04 17:49:31

Web Page生命周ASP.NET Pos

2009-08-03 14:18:40

ASP.NET編程模型ASP.NET頁面生命

2009-06-18 13:32:39

Java線程生命周期

2012-08-16 09:38:38

ASP.NET

2009-08-10 14:31:46

ASP.NET組件設計ASP.NET控件生命

2009-02-12 13:16:55

請求生命周期MVCASP.NET

2012-01-16 09:00:56

線程

2011-06-21 10:26:37

2009-07-28 09:46:53

ASP.NET服務器控

2009-07-23 18:55:17

ASP.NET頁生命周

2021-04-26 09:22:07

ASP.NET Cor服務周期

2010-04-02 09:02:02

ASP.NET MVC

2024-06-03 08:00:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91天堂网| 国产成人精品一区二区三区在线 | 亚洲激情自拍偷拍 | 国内精品视频在线观看 | 欧美精品久久久久 | 九九热这里只有精品6 | 国产婷婷综合 | 国产精品视频在线观看 | 伊人免费网 | 久久午夜视频 | 久久剧场 | 日韩在线91| 日韩在线视频观看 | 日本爱爱视频 | 日韩欧美国产成人一区二区 | 久久这里只有精品首页 | 在线成人av | 国产精品欧美一区二区三区不卡 | 久久毛片网站 | 一区二区三区久久久 | 日本天堂视频在线观看 | 久久精品一 | 色一级| 日韩综合在线 | 国产精品久久亚洲 | 国产精品久久久久久一区二区三区 | 成人亚洲视频 | 日韩综合在线 | 久久精品欧美一区二区三区麻豆 | 久久久久久高潮国产精品视 | 亚洲成人网在线观看 | 亚洲精品日韩在线 | 免费午夜电影 | 看特级黄色片 | 成人一区二区三区在线观看 | 中文字幕 在线观看 | 九九热在线免费视频 | 欧美日韩久| 五月激情婷婷网 | 玖玖在线精品 | 成人精品免费视频 |