Ãëàâíàÿ    Ex Libris    Êíèãè    Æóðíàëû    Ñòàòüè    Ñåðèè    Êàòàëîã    Wanted    Çàãðóçêà    ÕóäËèò    Ñïðàâêà    Ïîèñê ïî èíäåêñàì    Ïîèñê    Ôîðóì   
blank
Àâòîðèçàöèÿ

       
blank
Ïîèñê ïî óêàçàòåëÿì

blank
blank
blank
Êðàñîòà
blank
Duffy J. — Concurrent Programming on Windows
Duffy J. — Concurrent Programming on Windows



Îáñóäèòå êíèãó íà íàó÷íîì ôîðóìå



Íàøëè îïå÷àòêó?
Âûäåëèòå åå ìûøêîé è íàæìèòå Ctrl+Enter


Íàçâàíèå: Concurrent Programming on Windows

Àâòîð: Duffy J.

Àííîòàöèÿ:

Simply put, Joe Duffy is a world-wide authority on this topic. I don't just say that based on working with him (his office was 5 offices down the hall from mine), but also based on the conversations I've seen him dominate with other visionaries inside of Microsoft. If you don't take my word for it, just look at how elegant the Parallel Extensions to the .NET framework are that Joe was the dev lead and architect on. If you want to see examples of how clearly he can put his thoughts to writing, just visit his blog (http://www.bluebytesoftware.com/). 5 stars are not enough for this seminal piece of work.


ßçûê: en

Ðóáðèêà: Computer science/

Ñòàòóñ ïðåäìåòíîãî óêàçàòåëÿ: Ãîòîâ óêàçàòåëü ñ íîìåðàìè ñòðàíèö

ed2k: ed2k stats

Ãîä èçäàíèÿ: 2008

Êîëè÷åñòâî ñòðàíèö: 985

Äîáàâëåíà â êàòàëîã: 18.08.2014

Îïåðàöèè: Ïîëîæèòü íà ïîëêó | Ñêîïèðîâàòü ññûëêó äëÿ ôîðóìà | Ñêîïèðîâàòü ID
blank
Ïðåäìåòíûé óêàçàòåëü
Mutexes, acquiring and releasing      216—217
Mutexes, avoiding registering waits for      376
Mutexes, care when using APCs with      210
Mutexes, creating and opening      212—216
Mutexes, defined      42
Mutexes, designing library locks      874
Mutexes, example of semaphores and      224—226
Mutexes, overview of      211—212
Mutexes, process shutdown and      564 568 571
Mutexes, signaled/nonsignaled state transition      186
Mutexes, Vista thread pool completion tasks      350—351
mutexSecurity argument      214
Mutual exclusion mechanisms, avoiding deadlocks with      576
Mutual exclusion mechanisms, causing deadlocks      575
Mutual exclusion mechanisms, data synchronization      see "Critical sections Win32" "Locks CLR"
Mutual exclusion mechanisms, Dekker's and Dijkstra's algorithm      50—53
Mutual exclusion mechanisms, executing interlocked operations      492—493
Mutual exclusion mechanisms, hardware CAS instructions      55—58
Mutual exclusion mechanisms, implementing critical regions      47—48
Mutual exclusion mechanisms, Lamport's bakery algorithm      54—55
Mutual exclusion mechanisms, Peterson's algorithm      53—54
Mutual exclusion mechanisms, strict alternation      49—50
MWMO-WAITALL value      202
m_head      535 537
m_value class      521—527
NA (neutral apartments)      834—835
Natural scalability, of algorithms      760—761
Nested parallelism      757
Nesting loops, data parallelism and      677—678
Neutral Apartments (NA)      834—835
new Singleton ( ) statement      521 524
NodeInfoArray, WCT      596
Non-const pointer      36—38
Non-Uniform Memory Access (NUMA) machines      178—179
Nonatomic software      22
Nonblocking programming      see also "Lock-free data structures"
Nonblocking programming, ABA problem      536—537
Nonblocking programming, defined      477
Nonblocking programming, implementing custom nonblocking stack      534—536
Nonblocking programming, parallel containers and      615
Nonblocking programming, Win32 singly linked lists      538—540
Nonlinear pipelines      711
Nonlocal transfer of control, in Windows      84
Nonsignaled events      67
NotBuffered merge, PLINQ      913
NP-hard problems, parallelism      718
NULL value, CreateThread failure      92
NUMA (Non-Uniform Memory Access) machines      178—179
Object header inflation      284—285
Object headers, CLR objects      283—285
Object invariants      548
object state argument, TPL      890
Objects, overlapped      788—792
Obstruction freedom      518
Online debugging symbols      139
OpenEvent(Ex) APIs      228—230
OpenExisting method, closing mutexes      215—216
OpenExisting method, opening events      230
OpenExisting method, opening existing semaphore      221
OpenSemaphore      220—222
OpenThread      95
OpenThreadWaitChainSession, WCT      595—596
optimistic concurrency      625—626
Order preservation, PLINQ      914—915
Orderly shutdown      569—570
Orphaned locks      45 561—562
Orphaning, abandoned mutexes and      218
OS threads      879—880
OutOfMemoryException      143
Output dependence      485—486
Overflow, stack      140—145
Overlapped class      369—370
Overlapped class, CLR thread pool I/O completion ports      369—371
Overlapped I/O      see also "Asynchronous I/O"
Overlapped I/O, overlapped objects      788—792
Overlapped I/O, overview of      786—788
Overtaking race      654
Ownership, asserting lock      872
Ownership, CLR thread pool and      377
Ownership, debugging CLR monitor ownership      285—287
Ownership, debugging legacy RWLs      303—304
Ownership, defined      32
Ownership, mutex      211—212
Ownership, overview of      33—34
Ownership, Vista thread pool      352—353
P (taking), semaphores      42
P/Invoking      881
Pack method, CLR thread pool      370
PAGE_GUARD attribute      134 137
Parallel class, TPL      904—908
Parallel containers      613—655
Parallel containers, approaches to      614—616
Parallel containers, coordination containers      640—650
Parallel containers, fine-grained locking      616—632
Parallel containers, lock-free data structures      632—640
Parallel containers, phased computations with barriers      650—654
Parallel containers, sequential containers vs.      613—614
Parallel execution, cancellation      729—731
Parallel execution, concurrent exceptions      721—729
Parallel execution, data parallelism      see "Data parallelism"
Parallel execution, message-based parallelism      719—720
Parallel execution, overview of      657—659
Parallel execution, task parallelism      see "Task parallelism"
Parallel extensions to .NET      887—930
Parallel extensions to .NET, concurrent collections      924—929
Parallel extensions to .NET, further reading      930
Parallel extensions to .NET, overview of      887—888
Parallel extensions to .NET, parallel LINQ      910—915
Parallel extensions to .NET, synchronization primitives      see "Synchronization primitives"
Parallel extensions to .NET, TPL      see "TPL (task parallel library)"
Parallel hardware architecture      736—756
Parallel hardware architecture, cache coherence      742—750
Parallel hardware architecture, cache layouts      740—742
Parallel hardware architecture, locality      750—751
Parallel hardware architecture, memory hierarchy      739
Parallel hardware architecture, overview of      736
Parallel hardware architecture, profiling in Visual Studio      754—756
Parallel hardware architecture, sharing access to locations      751—754
Parallel hardware architecture, SMP, CMP, and HT      736—738
Parallel hardware architecture, superscalar execution      738—739
Parallel hardware architecture, UMA vs. NUMA      740
Parallel LINQ      see "PLINQ (Parallel LINQ)"
Parallel merge-sort      681—684
Parallel quick-sort      681
Parallel traversal      613
ParallelEnumerable class, PLINQ      910—912
Parallelism, deciding to igo paralleli      756—758
Parallelism, defined      80
Parallelism, designing reusable libraries      866—867
Parallelism, layers of      8—10
Parallelism, measuring improvement due to      758
Parallelism, overview of      5
Parallelism, structured      70—71
ParameterizedThreadStart      99
Parents, task parallel library      895—897
Partitioning      912
PE (portable executable) image      131—132
peb (!) command      146
PEB (process environment block), within TEB      145
PeekMessage      198—200
Performance counters, querying thread state      156—157
Performance, Amdahlis Law      762—764
Performance, critical paths      764—765
Performance, deciding to igo paralleli      756—758
Performance, designing reusable libraries      881—884
Performance, garbage collection and scalability      766—767
Performance, Gustafsonfs Law      764
Performance, interlocked operations      493 505—506
Performance, load imbalances and      765—766
Performance, measuring improvement due to parallelism      758
Performance, measuring speedups and efficiency      760—762
Performance, Mellor — Crummey — Scott (MSC) locks      778—781
Performance, natural scalability vs. speedups      760—761
Performance, overview of      735—736
Performance, parallel hardware architecture      see "Parallel hardware architecture"
Performance, ReaderWriterLockSlim      299
Performance, recursive lock acquires      872
Performance, speedups and efficiencies and      756
Performance, spin waiting and      766—772
Performance, spin-only locks      772—778
Performance, tuning quantum settings      163
Performance, types of speedups      758—760
Periodic polling      730
Persistent threads, Vista thread pool      352—353
Pervasive concurrency      865
Peterson's algorithm      53—54
Phased computations with barriers      650—654
pi-calculus      72
Pipelines, defined      541
Pipelines, generalized data structure      712—716
Pipelines, load balanced      716—717
Pipelines, overview of      709—712
Pipelines, pipelining output of futures or promises      698—702
PLINQ (Parallel LINQ), buffering and merging      912—914
PLINQ (Parallel LINQ), defined      887
PLINQ (Parallel LINQ), order preservation      914—915
PLINQ (Parallel LINQ), overview of      910—912
Pointer size values, store atomicity and      487
Polling, asynchronous I/O completion      798—800
Polling, canceling periodic      730
Pollution, thread      352 377
Portable executable (PE) image      131—132
Postconditions, as invariants      548
Preconditions, as invariants      547
Predictability, GUI      836
Predictability, of responsive GUIs      836
preemptive scheduling      83 154—155
Prerender event, ASP.NET      421
Priorities, custom thread pool with      387—391
Priorities, lock reliability and      878
Priorities, quantum adjustments and      164—167
Priorities, thread scheduling      159—163
Priority boosts      84 232—234
Priority class      159—160
Priority inheritance      609
Priority inversion      608—609 610 878
Priority level      159
Priority, Thread class      160
PriorityClass, Process      159
PriorityLevel, ProcessThread      160—161
Private state, shared state vs.      15—19
Privatization      15—16 33
ProbeForStackSpace method      145
ProbeForSufficientStack      144 149
Probes, stack      143—145
Process affinity masks, CPU affinity      173—174
Process class      159 175
Process environment block (PEB)      145
Process exit, threads      113—115
Process isolation      31
Process shutdown, locks and      561—571
Process shutdown, locks and, managed code      568
Process shutdown, locks and, managed code and      569—571
Process shutdown, locks and, overview of      561—563
Process shutdown, locks and, Win32: weakening and termination      563—568
Processes, assigning CPU affinity to      171—175
Processes, Windows vs. UNIX      80—81
ProcessExit event, CLR      569—570
ProcessorAffinity, CPU affinity      175
Processors, concurrency in modern      5
Processors, creating fences at level of      512—515
Processors, relationship between fibers, threads and      438
ProcessPriorityClass      159
ProcessThread class      98 160—161
Producer/consumer containers      614
producer/consumer relationship      641—642
Profilers, thread suspension in      170
Program order      480—484
Programming Windows (Petzold)      198
Programs, naturally scalable      5
progress reporting      425—426
ProgressChangedEventHandler      426
Promise style future      900
Promises, building dataflow systems      693—695
Promises, pipelining output of      698—702
Properties, ReaderWriterLockSlim      295
Pseudo-handles, CreateThread      94—95
PTEB structure      146
Publication, data ownership and      33
Pulse, .NET Framework monitors      310
Pulse, missed wake-ups      598—601
Pulse, two-step dance problems      608
PulseAll, .NET Framework monitors      310
PulseAll, missed wake-ups      598—601
PulseAll, two-step dance problems      608
PulseEvent API      231
Pulsing, .NET Framework monitors      310
Pump messages, GUI and COM      195—204
Pump messages, GUI and COM, CoWaitForMultipleHandles API      202—203
Pump messages, GUI and COM, deciding when to pump messages      203—204
Pump messages, GUI and COM, MsgWaitForMultipleObjects(Ex)      198—201
Pump messages, GUI and COM, overview of      195—198
quantums      83 163—167
QueuellserWorkItem, APM      402—403
QueuellserWorkItem, CLR thread pool      371
QueuellserWorkItem, legacy thread pool      354—356 363
QueuellserWorkItem, ThreadPool class      364—366
QueueWork functions, user-mode scheduler      463—464
Race conditions (data races)      546—555
Race conditions (data races) in library code      874—875
Race conditions (data races), benign      553—555
Race conditions (data races), composite actions and      550—553
Race conditions (data races), concurrency causing      10
Race conditions (data races), eliminating with critical regions      40
Race conditions (data races), famous bugs due to      610
Race conditions (data races), inconsistent synchronization and      26 549—550
Race conditions (data races), invariants and      548
Race conditions (data races), overview of      546—549
Race conditions (data races), patterns of critical region usage      43—45
Race conditions (data races), reasons for      26—27
Race conditions (data races), two-step dance problems due to      607—608
Radix sort, algorithms      681
Random access, linked lists      621
Randomized backoff      602—603
RCWs (runtime callable wrappers)      575
Reactive systems      61
Read-only synchronization      881—882
Read/read hazards      28 34
Read/write hazards      28
Reader/writer locks      see "RWLs (reader/writer locks)"
ReaderWriterLock for read-only synchronization      881—882
ReaderWriterLock, as legacy version      300—304
ReaderWriterLock, motivating development of new lock      299—300
ReaderWriterLock, overview of      293—294
ReaderWriterLock, reliability limitation      298
ReaderWriterLockSlim, creating fences using      514
ReaderWriterLockSlim, motivation for      299—300
ReaderWriterLockSlim, overview of      293—294
ReaderWriterLockSlim, process shutdown      565
ReaderWriterLockSlim, recursive acquires      297—298
ReaderWriterLockSlim, reliability limitation      298—299
ReaderWriterLockSlim, three modes of      294—295
ReaderWriterLockSlim, upgrading      296—297
ReadFile      792
readonly fields, single assignment      35—36
readonly keyword, single assignment      35
Ready thread state      155
Recursion, avoiding lock      872
Recursion, detecting in spin waiting      773—775 777
Recursion, reentrancy and      555—558
1 2 3 4 5 6 7 8
blank
Ðåêëàìà
blank
blank
HR
@Mail.ru
       © Ýëåêòðîííàÿ áèáëèîòåêà ïîïå÷èòåëüñêîãî ñîâåòà ìåõìàòà ÌÃÓ, 2004-2024
Ýëåêòðîííàÿ áèáëèîòåêà ìåõìàòà ÌÃÓ | Valid HTML 4.01! | Valid CSS! Î ïðîåêòå