Listing 1 - 6 of 6 |
Sort by
|
Choose an application
Gain a deep understanding of concurrency and learn how to leverage concurrent algorithms to build high-throughput data processing applications, network servers and clients that scale. Key Features Learn about the Go concurrency primitives, Go memory model, and common concurrency patterns Develop the insights on how to model solutions to real-life problems using concurrency Explore practical techniques to analyze how concurrent programs behave Book Description The Go language has been gaining momentum due to its treatment of concurrency as a core language feature, making concurrent programming more accessible than ever. However, concurrency is still an inherently difficult skill to master, since it requires the development of the right mindset to decompose problems into concurrent components correctly. This book will guide you in deepening your understanding of concurrency and show you how to make the most of its advantages. You'll start by learning what guarantees are offered by the language when running concurrent programs. Through multiple examples, you will see how to use this information to develop concurrent algorithms that run without data races and complete successfully. You'll also find out all you need to know about multiple common concurrency patterns, such as worker pools, asynchronous pipelines, fan-in/fan-out, scheduling periodic or future tasks, and error and panic handling in goroutines. The central theme of this book is to give you, the developer, an understanding of why concurrent programs behave the way they do, and how they can be used to build correct programs that work the same way in all platforms. By the time you finish the final chapter, you'll be able to develop, analyze, and troubleshoot concurrent algorithms written in Go. What you will learn Understand basic concurrency concepts and problems Learn about Go concurrency primitives and how they work Learn about the Go memory model and why it is important Understand how to use common concurrency patterns See how you can deal with errors in a concurrent program Discover useful techniques for troubleshooting Who this book is for If you are a developer with basic knowledge of Go and are looking to gain expertise in highly concurrent backend application development, then this book is for you. Intermediate Go developers who want to make their backend systems more robust and scalable will also find plenty of useful information. Prior exposure Go is a prerequisite.
Choose an application
Algebraic number theory. --- Number theory --- Parallel processing (Electronic computers) --- Computer multitasking --- Mathematics.
Choose an application
Build solid software with modern and safe concurrency features. Concurrency is one of the hardest problems in computer science. For years, computer scientists and engineers have developed different strategies for dealing with concurrency. However, the original concurrency primitives are complicated and difficult to understand, and even harder to implement. Using the new async/await APIs in Swift, this book will explain how your code can abstract a lot of the complexity with a simpler interface so you never have to deal with concurrency primitives such as semaphores, locks, and threads yourself. This will allow you to write concurrent code that is easier to read, easier to write, and easier to maintain. These new APIs are deeply ingrained into Swift, offering compile-level features that will keep you from writing dangerous concurrent code. You'll start by exploring why concurrency is hard to implement in a traditional system. Explaining the definition of concurrency and what its primitives are will help you understand why they are hard to use correctly. These concepts will become clearer as you work through the sample projects. The book's focus then shifts exclusively to the new APIs, helping you understand how the integration of the system with the language itself makes it easier for you to write concurrent code without overstepping the bounds of the concurrency safe zone. By the end of the book, you'll have a solid foundation for working safely with concurrent code using the new async/await APIs. What You'll Learn Understand concurrency and its traditional problems Work with the new async/await API and all its features, from the basic usage and await keywords, to task groups and async sequences. Implement modern and safe concurrent code that you can start using right away Who This Book Is For Experienced iOS developers at a semi-senior or senior level. Knowledge on the Grand Central Dispatch is a bonus, but not required.
Computer architecture. Operating systems --- Computer. Automation --- computers --- computerbesturingssystemen --- OS (operating system) --- computerkunde --- Apple --- Swift (Computer program language) --- Application program interfaces (Computer software) --- Application software --- Computer multitasking. --- Development.
Choose an application
In concurrent and distributed systems, processes can complete tasks together by playing their parts in a joint plan. The plan, or protocol, can be written as a choreography: a formal description of overall behaviour that processes should collaborate to implement, like authenticating a user or purchasing an item online. Formality brings clarity, but not only that. Choreographies can contribute to important safety and liveness properties. This book is an ideal introduction to theory of choreographies for students, researchers, and professionals in computer science and applied mathematics. It covers languages for writing choreographies and their semantics, and principles for implementing choreographies correctly. The text treats the study of choreographies as a discipline in its own right, following a systematic approach that starts from simple foundations and proceeds to more advanced features in incremental steps. Each chapter includes examples and exercises aimed at helping with understanding the theory and its relation to practice.
Choose an application
This book presents novel approaches to the formal specification of concurrent and parallel systems, mathematical models for describing such systems, and programming and verification concepts for their implementation. A special emphasis is on methods based on artificial intelligence and machine learning techniques. Chapters are revised selected papers from the 29th International Workshop on Concurrency, Specification, and Programming (CS&P 2021), Berlin, Germany. Nine independent chapters cover formal approaches to topics such as requirements formalization, parsing, or granular computing, as well as their applications in recommender systems, decision making, security, optimization, and other areas. The book thus addresses both researchers and practitioners in its field.
Computational intelligence. --- Engineering—Data processing. --- Computational Intelligence. --- Data Engineering. --- Intelligence, Computational --- Artificial intelligence --- Soft computing --- Computer programming --- Computer multitasking. --- Computer multi-tasking --- Concurrent processing (Computer science) --- Multi-tasking, Computer --- Multitasking (Computer science) --- Electronic data processing
Choose an application
This book constitutes the proceedings of the Workshop on Asynchronous Many-Task Systems and Applications 2023 in Baton Rouge, LA, USA, February 2023. The workshop present the advantages and challenges of task-based programming on modern and future HPC systems. The 6 full papers included in this volume were carefully reviewed and selected from 7 submissions.
Computer multitasking --- High performance computing --- Computer multi-tasking --- Concurrent processing (Computer science) --- Multi-tasking, Computer --- Multitasking (Computer science) --- Electronic data processing --- Computers. --- Computer Hardware. --- Automatic computers --- Automatic data processors --- Computer hardware --- Computing machines (Computers) --- Electronic brains --- Electronic calculating-machines --- Electronic computers --- Hardware, Computer --- Computer systems --- Cybernetics --- Machine theory --- Calculators --- Cyberspace --- Mathematics
Listing 1 - 6 of 6 |
Sort by
|