作者
Tengfei Tu, Xiaoyu Liu, Linhai Song, Yiying Zhang
发表日期
2019/4/4
图书
Proceedings of the twenty-fourth international conference on architectural support for programming languages and operating systems
页码范围
865-878
简介
Go is a statically-typed programming language that aims to provide a simple, efficient, and safe way to build multi-threaded software. Since its creation in 2009, Go has matured and gained significant adoption in production and open-source software. Go advocates for the usage of message passing as the means of inter-thread communication and provides several new concurrency mechanisms and libraries to ease multi-threading programming. It is important to understand the implication of these new proposals and the comparison of message passing and shared memory synchronization in terms of program errors, or bugs. Unfortunately, as far as we know, there has been no study on Go's concurrency bugs. In this paper, we perform the first systematic study on concurrency bugs in real Go programs. We studied six popular Go software including Docker, Kubernetes, and gRPC. We analyzed 171 concurrency bugs …
引用总数
2019202020212022202320243162326167
学术搜索中的文章
T Tu, X Liu, L Song, Y Zhang - Proceedings of the twenty-fourth international …, 2019