自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (16)
  • 收藏
  • 关注

空空如也

多线程编程

多线程编程 c#开发技术大全

2013-05-30

多线程开发文档

Part 1: Getting Started ..................................................................... 4 Introduction and Concepts .............................................................................. 4 Join and Sleep ....................................................................................... 6 How Threading Works ......................................................................... 7 Threads vs Processes ............................................................................ 7 Threading’s Uses and Misuses ............................................................. 8 Creating and Starting Threads ........................................................................ 8 Passing Data to a Thread ...................................................................... 9 Naming Threads ................................................................................. 11 Foreground and Background Threads ................................................ 11 Thread Priority.................................................................................... 12 Exception Handling ............................................................................ 12 Thread Pooling .............................................................................................. 14 Entering the Thread Pool via TPL ...................................................... 15 Entering the Thread Pool Without TPL .............................................. 16 Optimizing the Thread Pool ............................................................... 17 Part 2: Basic Synchronization ....................................................... 19 Synchronization Essentials ........................................................................... 19 Blocking ............................................................................................. 19 Blocking Versus Spinning .................................................................. 20 ThreadState ......................................................................................... 20 Locking ......................................................................................................... 21 Monitor.Enter and Monitor.Exit ......................................................... 22 Choosing the Synchronization Object ................................................ 23 When to Lock ..................................................................................... 23 Locking and Atomicity ....................................................................... 24 Nested Locking ................................................................................... 24 Deadlocks ........................................................................................... 25 Performance ........................................................................................ 26 Mutex .................................................................................................. 26 Semaphore .......................................................................................... 27 © 2006-2010 Joseph Albahari, O’Reilly Media, Inc. All rights reserved. www.albahari.com/threading/ 2 Thread Safety ................................................................................................ 28 Thread Safety and .NET Framework Types ....................................... 28 Thread Safety in Application Servers ................................................. 30 Rich Client Applications and Thread Affinity ................................... 30 Immutable Objects .............................................................................. 32 Signaling with Event Wait Handles .............................................................. 33 AutoResetEvent .................................................................................. 33 ManualResetEvent .............................................................................. 37 CountdownEvent ................................................................................ 38 Creating a Cross-Process EventWaitHandle ...................................... 39 Wait Handles and the Thread Pool ..................................................... 39 WaitAny, WaitAll, and SignalAndWait ............................................. 40 Synchronization Contexts ............................................................................. 41 Reentrancy .......................................................................................... 43 Part 3: Using Threads .................................................................... 44 The Event-Based Asynchronous Pattern ...................................................... 44 BackgroundWorker ....................................................................................... 45 Using BackgroundWorker .................................................................. 45 Subclassing BackgroundWorker ........................................................ 47 Interrupt and Abort ....................................................................................... 48 Interrupt .............................................................................................. 49 Abort ................................................................................................... 49 Safe Cancellation .......................................................................................... 50 Cancellation Tokens ........................................................................... 51 Lazy Initialization ......................................................................................... 52 Lazy<T> ............................................................................................. 53 LazyInitializer..................................................................................... 53 Thread-Local Storage ................................................................................... 54 [ThreadStatic] ..................................................................................... 54 ThreadLocal<T> ................................................................................. 55 GetData and SetData .......................................................................... 55 Timers ........................................................................................................... 56 Multithreaded Timers ......................................................................... 56 Single-Threaded Timers ..................................................................... 58 Part 4: Advanced Topics ............................................................... 59 Nonblocking Synchronization ...................................................................... 59 Memory Barriers and Volatility ......................................................... 59 Interlocked .......................................................................................... 63 Signaling with Wait and Pulse ...................................................................... 65 How to Use Wait and Pulse ................................................................ 65 Producer/Consumer Queue ................................................................. 67 Wait Timeouts .................................................................................... 70 Two-Way Signaling and Races .......................................................... 71 Simulating Wait Handles .................................................................... 72 Writing a CountdownEvent ................................................................ 74 Thread Rendezvous ............................................................................ 75 © 2006-2010 Joseph Albahari, O’Reilly Media, Inc. All rights reserved. www.albahari.com/threading/ 3 The Barrier Class .......................................................................................... 75 Reader/Writer Locks ..................................................................................... 77 Upgradeable Locks and Recursion ..................................................... 78 Suspend and Resume .................................................................................... 80 Aborting Threads .......................................................................................... 80 Complications with Thread.Abort ...................................................... 82 Ending Application Domains ............................................................. 83 Ending Processes ................................................................................ 84 Part 5: Parallel Programming ........................................................ 85 Parallel Programming ................................................................................... 85 Why PFX? .................................................................................................... 85 PFX Concepts ..................................................................................... 86 PFX Components................................................................................ 86 When to Use PFX ............................................................................... 87 PLINQ ........................................................................................................... 87 Parallel Execution Ballistics ............................................................... 89 PLINQ and Ordering .......................................................................... 89 PLINQ Limitations ............................................................................. 90 Example: Parallel Spellchecker .......................................................... 90 Functional Purity ................................................................................ 92 Calling Blocking or I/O-Intensive Functions ..................................... 92 Cancellation ........................................................................................ 94 Optimizing PLINQ ............................................................................. 94 Parallelizing Custom Aggregations .................................................... 96 The Parallel Class ....................................................................................... 100 Parallel.Invoke .................................................................................. 100 Parallel.For and Parallel.ForEach ..................................................... 100 Task Parallelism .......................................................................................... 105 Creating and Starting Tasks .............................................................. 105 Waiting on Tasks .............................................................................. 107 Exception-Handling Tasks ............................................................... 108 Canceling Tasks ................................................................................ 109 Continuations .................................................................................... 110 Task Schedulers and UIs .................................................................. 113 TaskFactory ...................................................................................... 114 TaskCompletionSource .................................................................... 114 Working with AggregateException ............................................................ 115 Flatten and Handle ............................................................................ 116 Concurrent Collections ............................................................................... 117 IProducerConsumerCollection<T> .................................................. 117 ConcurrentBag<T> ........................................................................... 118 BlockingCollection<T> .................................................................... 119 SpinLock and SpinWait .............................................................................. 121 SpinLock........................................................................................... 121 SpinWait ........................................................................................... 122

2013-05-30

可扩展标记语言

可扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

2013-05-30

语言集成查询LINQ

语言集成查询LINQ

2013-05-30

WPF框架pdf文档

WPF框架

2013-05-30

WinCE.net内核定制及应用开发

WinCE.net内核定制及应用开发

2013-05-20

WINDOWS+CE(C#)嵌入式应用开发

WINDOWS+CE(C#)嵌入式应用开发

2013-05-20

Windows嵌入式开发系列课程(4)

Windows嵌入式开发系列课程(4):Windows_CE电源管理

2013-05-20

Windows嵌入式开发系列课程(3)

Windows嵌入式开发系列课程(3):WindowsCE.NET_USB驱动开发基础.pdf

2013-05-20

Windows嵌入式开发系列课程(2)

有c++、c语言基础 Windows嵌入式开发系列课程(2):使用Embedded_Visual_C++开发通讯终端及应用实例代码分析.pdf

2013-05-20

Windows嵌入式开发系列课程(1)

WINCE 要求 有一定的c++/c语言基础

2013-05-20

java和.net调用webservice的各种方法总结

java 调用webservice的各种方法总结 现在webservice加xml技术已经逐渐成熟,但要真正要用起来还需时日!! 由于毕业设计缘故,我看了很多关于webservice方面的知识,今天和大家一起来研究研究webservice的各种使用方法。 一、利用jdk web服务api实现,这里使用基于 SOAP message 的 Web 服务 1.首先建立一个Web services EndPoint: package Hello; import javax.jws.WebService; import javax.jws.WebMethod; import javax.xml.ws.Endpoint; @WebService public class Hello { @WebMethod public String hello(String name) { return "Hello, " + name + "\n"; } public static void main(String[] args) { // create and publish an endpoint Hello hello = new Hello(); Endpoint endpoint = Endpoint.publish("http://localhost:8080/hello", hello); } } 2.使用 apt 编译 Hello.java(例:apt -d [存放编译后的文件目录] Hello.java ) ,会生成 jaws目录

2011-11-15

ACCESS语法

ACCESS语法收集 函数及计算 合计的群组,运算式及条件 SELECT 订单.客户编号, Sum(订单.含税价) AS 含税价之总计, Last(订单.订单日期) AS 订单日期之最后一笔, Date()-[订单日期之最后一笔] AS 距今天数 FROM 订单 WHERE (订单.订单日期>=#12/1/2006#) GROUP BY 订单.客户编号 11-2 查询指令 群组 条件 多个计算栏位 多资料表查询指令 INNER JOIN-最基本的JOIN方式 SELECT 客户.公司名称, 订单.订单编号, 订单.订单日期 FROM 客户 INNER JOIN 订单 ON 客户.客户编号 = 订单.客户编号 11-2 查询指令 多资料表查询指令 LEFT及RIGHT JOIN SELECT 客户.公司名称, 客户.连络人姓名, 订单.客户编号 FROM 客户 LEFT JOIN 订单 ON 客户.客户编号 = 订单.客户编号 WHERE (订单.客户编号 Is Null) 11-2 查询指令 四种动作查询指令

2011-11-15

有关css的属性和用法

有关于才css的属性和用法 能更好地了解css

2010-09-22

html的属性和用法

有关于 html中的表格 表单 字体 等有关的动态页面和静态页面的属性

2010-09-22

随机抽取图片进行战斗

主要运用时钟控件 做到随机抽取图片 然后根据每张图片的值 进行PK

2010-03-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除