Joe Duffy Concurrent Programming on Windows

ISBN 13: 9780321434821

Concurrent Programming on Windows

4,16 valoración promedio
( 37 valoraciones por Goodreads )
 
9780321434821: Concurrent Programming on Windows

“When you begin using multi-threading throughout an application, the importance of clean architecture and design is critical. . . . This places an emphasis on understanding not only the platform’s capabilities but also emerging best practices. Joe does a great job interspersing best practices alongside theory throughout his book.”

– From the Foreword by Craig Mundie, Chief Research and Strategy Officer, Microsoft Corporation

 

Author Joe Duffy has risen to the challenge of explaining how to write software that takes full advantage of concurrency and hardware parallelism. In Concurrent Programming on Windows, he explains how to design, implement, and maintain large-scale concurrent programs, primarily using C# and C++ for Windows.

 

Duffy aims to give application, system, and library developers the tools and techniques needed to write efficient, safe code for multicore processors. This is important not only for the kinds of problems where concurrency is inherent and easily exploitable—such as server applications, compute-intensive image manipulation, financial analysis, simulations, and AI algorithms—but also for problems that can be speeded up using parallelism but require more effort—such as math libraries, sort routines, report generation, XML manipulation, and stream processing algorithms.

 

Concurrent Programming on Windows has four major sections: The first introduces concurrency at a high level, followed by a section that focuses on the fundamental platform features, inner workings, and API details. Next, there is a section that describes common patterns, best practices, algorithms, and data structures that emerge while writing concurrent software. The final section covers many of the common system-wide architectural and process concerns of concurrent programming.

 

This is the only book you’ll need in order to learn the best practices and common patterns for programming with concurrency on Windows and .NET.

"Sinopsis" puede pertenecer a otra edición de este libro.

About the Author:

Joe Duffy is the development lead, architect, and founder of the Parallel Extensions to the .NET Framework team at Microsoft. In addition to hacking code and managing a team of developers, he works on long-term vision and incubation efforts, such as language and type system support for concurrency safety. He previously worked on the Common Language Runtime team. Joe blogs regularly at www.bluebytesoftware.com/blog.

Excerpt. © Reprinted by permission. All rights reserved.:

I began writing this book towards the end of 2005. At the time, dual-core processors were becoming standard on the mainstream PC's that ordinary (non-programmer) consumers were buying, and a small number of people in industry had begun to make noise about the impending concurrency problem. (Herb Sutter's The Free Lunch is Over paper immediately comes to mind.) The problem people were worried about, of course, was that the software of the past was not written in a way that would allow it to naturally exploit that additional compute power. Contrast that with the never-ending increase in clock speeds. No more free lunch indeed.

It seemed to me that concurrency was going to be an important part of every software developer's job somewhere down the road and that a book like this would be important and useful. Just over two years later, the impact is beginning to ripple up from the operating system, through the libraries, and on up to applications themselves.

This was about the same time I had wrapped up prototyping a small side-project on which I had been burning the midnight oil for the previous six months: Parallel Language Integrated Query (PLINQ). The PLINQ project was a conduit for me to explore the intricacies of concurrency, multi-core, and specifically how parallelism might be used in real-world, everyday programs. I used it as a tool to figure out where the platform was lacking. This was in addition to spending my day job at Microsoft focused on software transactional memory (STM), a technology that in the intervening two years has become somewhat of an industry buzzword. Needless to say, I had become pretty entrenched in all topics concurrency. What better way to get entrenched even further than to write a book on the subject?

As I worked on all of these projects, and eventually PLINQ grew into Parallel Extensions to the .NET Framework, I was amazed at how few good books on Windows concurrency were available. I remember time and time again being astonished or amazed at some intricate and esoteric bit of concurrency-related information, jotting it down, and earmarking it for inclusion in this book. I only wished somebody had written it down before me, so that I didn't need to scour it from numerous sources: hallway conversations, long nights of pouring over Windows and CLR source code, and reading and rereading countless Microsoft employee blogs. But the best books on the topic dated back to the early '90s and, while still really good, focused too much on the mechanics and not on how to structure parallel programs, implement parallel algorithms, deal with concurrency hazards, and other important concepts. Everything else targeted academics and researchers, and not application, system, and library developers.

I set out to write a book that I'd have found fascinating and a useful way to shortcut all of the random bits of information I had to learn throughout. Although it took me a surprisingly long two-and-a-half years to finish this book (!), the state of the art has evolved slowly, and the state of good books on the topic hasn't changed much either. The result of my efforts, I hope, is a new book that is down-to-earth and useful, but still full of very deep technical information. It is for any Windows or .NET developer who believes that concurrency is going to be a fundamental requirement of all software somewhere down the road, as all industry trends seem to imply.

I look forward to kicking back and enjoying this book. And I sincerely hope you do too.

Book Structure

I've structured the book into four major parts. The first, Concepts, introduces concurrency at a high level without going too deep into any one topic. The next part, Mechanisms, focuses squarely on the fundamental platform features, inner workings, and API details. After that, the part on Techniques describes common patterns, best practices, algorithms, and data structures that emerge while writing concurrent software. The fourth part, Systems, covers many of the systemwide architectural and process concerns that frequently arise. There is a progression here. Concepts is first because it develops a basic understanding of concurrency in general. Understanding the content in Techniques would be difficult without a solid understanding of the Mechanisms, and similarly, building real Systems would be impossible without understanding the rest. There is also a collection of Appendices at the end.

Code Requirements

To run code found in this book, you'll need to download some free pieces of software:

  • Microsoft Windows SDK. This includes the Microsoft C++ compiler and relevant platform headers and libraries. The latest versions as of this writing are the Windows Vista and Server 2008 SDKs.
  • Microsoft .NET Framework SDK. This includes the Microsoft C# and Visual Basic compilers, and relevant framework libraries. The latest version as of this writing is the .NET Framework 3.5 SDK.

Both can be found on MSDN: http://msdn.microsoft.com/.

In addition, it's highly recommended that you consider using Visual Studio. This is not required--and in fact, much of the code in this book was written in emacs--but provides for a more seamless development and debugging experience. Visual Studio 2008 Express Edition can be downloaded for free, although it lacks many useful capabilities such as performance profiling.

Lastly, the Debugging Tools for Windows package--which includes the popular WINDBG debugging utility--might also come in handy, particularly if you don't have Visual Studio. It is freely downloadable from http://www.microsoft.com/. Similarly, the Sysinternals utilities available from http://technet.microsoft.com/sysinternals/ are quite useful for inspecting aspects of the Windows OS.

A companion website for the book will be available simultaneous with publication of the book.

Joe Duffy
June 2008

joe@bluebytesoftware.com

"Sobre este título" puede pertenecer a otra edición de este libro.

Los mejores resultados en AbeBooks

Edición internacional
Edición internacional

1.

Duffy
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Tapa blanda Cantidad: 3
Edición internacional
Librería
bookscollection
(Delhi, DELHI, India)
Valoración
[?]

Descripción Estado de conservación: Brand New. PAPERBACK, Brand New, Softcover, International Edition. We Do not Ship APO FPO AND PO BOX. NO CD AND ACCESS CARD. Cover Image & ISBN may be different from US edition but contents as US Edition. Printing in English language. Quick delivery by USPS/UPS/DHL/FEDEX/ARAMEX ,Customer satisfaction guaranteed. We may ship the books from Asian regions for inventory purpose. Nº de ref. de la librería ABEJUL W/P 2370

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 19,94
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,59
De India a Estados Unidos de America
Destinos, gastos y plazos de envío
Edición internacional
Edición internacional

2.

Duffy
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Cantidad: 5
Edición internacional
Librería
PRIORITY BOOKS
(springfield, VA, Estados Unidos de America)
Valoración
[?]

Descripción Paperback. Estado de conservación: New. Softcover Book, New Condition, Fast Shipping. Ready in Stock. 1st Edition. [Please Read Carefully Before Buying], This Is An International Edition. Printed In Black and White. 1008 pages, Book Cover And ISBN No May Be Different From US Edition. Restricted Sales Disclaimer Wordings Not For Sales In USA And Canada May Be Printed On The Cover Of The Book. Standard Shipping 7-14 Business Days. Expedited Shiping 4-8 Business Days. ***WE DO NOT ENTERTAIN BULK ORDERS.*** The Books May Be Ship From Overseas For Inventory Purpose. Nº de ref. de la librería 396455

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 25,96
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,43
A Estados Unidos de America
Destinos, gastos y plazos de envío
Edición internacional
Edición internacional

3.

Duffy
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Primera edición Cantidad: 2
Edición internacional
Librería
ZerichSpace
(antioch, CA, Estados Unidos de America)
Valoración
[?]

Descripción Paperback. Estado de conservación: New. New condition. Softcover book, 1st Edition. (Read Description Before Buying), This is an international Edition. Black and White Book. ISBN or covers May Be Different From US Edition. Book may have Restricted Sales Disclaimer Wordings printed on cover. Books May Be Shipped From Overseas as per stock status. Nº de ref. de la librería 757507

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 25,98
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,43
A Estados Unidos de America
Destinos, gastos y plazos de envío
Edición internacional
Edición internacional

4.

Duffy
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Cantidad: 1
Edición internacional
Librería
Nick Book House
(fresno, CA, Estados Unidos de America)
Valoración
[?]

Descripción Paperback. Estado de conservación: New. New, Softcover International Edition, Printed in Black and White, Only USPS Media mail Shipping ONLY, Different ISBN, Same Content As US edition, Book Cover may be Different, in English Language. Nº de ref. de la librería 14583

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 26,00
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,43
A Estados Unidos de America
Destinos, gastos y plazos de envío
Edición internacional
Edición internacional

5.

Duffy
Editorial: Pearson (2008)
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Soft cover Cantidad: 1
Edición internacional
Librería
University Bookstore
(DELHI, DELHI, India)
Valoración
[?]

Descripción Pearson, 2008. Soft cover. Estado de conservación: New. International Edition. This book is BRAND NEW Soft cover International edition with black and white printing. ISBN number & cover page may be different but contents identical to the US edition word by word. Book is in English language. Nº de ref. de la librería UN-PEA-ON-661

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 22,67
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 10,01
De India a Estados Unidos de America
Destinos, gastos y plazos de envío
Edición internacional
Edición internacional

6.

International Edition
Editorial: International Edition
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Cantidad: 1
Edición internacional
Librería
Campustexxts
(Vicksburg, MI, Estados Unidos de America)
Valoración
[?]

Descripción International Edition. Paperback. Estado de conservación: New. International Edition. Very fast shipping. Receive your book in 2-7 business days if you checkout with expedited shipping. We take pride in our customer service, please contact us if you have any questions regarding the listing. Nº de ref. de la librería in-us-9780321434821

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 31,90
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,22
A Estados Unidos de America
Destinos, gastos y plazos de envío

7.

Duffy, Joe
Editorial: Addison-Wesley Professional (2008)
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Cantidad: 1
Librería
TEXTBOOKNOOK
(Knoxville, TN, Estados Unidos de America)
Valoración
[?]

Descripción Addison-Wesley Professional, 2008. Paperback. Estado de conservación: New. Brand New Text!!! Never Been Used!!! Edges barely worn. Barely shelfwear. This text is totally clean with no writing at all!!!. Nº de ref. de la librería 101813

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 42,13
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 2,58
A Estados Unidos de America
Destinos, gastos y plazos de envío

8.

Duffy, Joe
Editorial: Prentice Hall
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Cantidad: > 20
Librería
INDOO
(Avenel, NJ, Estados Unidos de America)
Valoración
[?]

Descripción Prentice Hall. Estado de conservación: New. Brand New. Nº de ref. de la librería 032143482X

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 44,12
Convertir moneda

Añadir al carrito

Gastos de envío: EUR 3,01
A Estados Unidos de America
Destinos, gastos y plazos de envío

9.

Duffy, Joe
Editorial: Addison-Wesley Professional
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Cantidad: 1
Librería
Ohmsoft LLC
(Lake Forest, IL, Estados Unidos de America)
Valoración
[?]

Descripción Addison-Wesley Professional. Estado de conservación: Brand New. Ships from USA. FREE domestic shipping. Nº de ref. de la librería 032143482X

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 50,63
Convertir moneda

Añadir al carrito

Gastos de envío: GRATIS
A Estados Unidos de America
Destinos, gastos y plazos de envío

10.

Joe Duffy
Editorial: Addison-Wesley Professional (2008)
ISBN 10: 032143482X ISBN 13: 9780321434821
Nuevos Paperback Cantidad: 1
Librería
Irish Booksellers
(Rumford, ME, Estados Unidos de America)
Valoración
[?]

Descripción Addison-Wesley Professional, 2008. Paperback. Estado de conservación: New. book. Nº de ref. de la librería 032143482X

Más información sobre esta librería | Hacer una pregunta a la librería

Comprar nuevo
EUR 52,45
Convertir moneda

Añadir al carrito

Gastos de envío: GRATIS
A Estados Unidos de America
Destinos, gastos y plazos de envío

Existen otras copia(s) de este libro

Ver todos los resultados de su búsqueda