检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:袁挺 陆杰 李炼[1,2] YUAN Ting;LU Jie;LI Lian(State Key Laboratory of Computer Architecture,Institute of Computing Technology,Chinese Academy of Sciences,Beijing 100190;University of Chinese Academy of Sciences,Beijing 100190)
机构地区:[1]中国科学院计算技术研究所计算机体系结构国家重点实验室,北京100190 [2]中国科学院大学,北京100190
出 处:《高技术通讯》2023年第4期360-369,共10页Chinese High Technology Letters
基 金:国家重点研发计划(2016YFB1000402)资助项目。
摘 要:Go语言是Google公司专为并发编程设计的开源语言,自2009年发布以来就在工业界和学术界获得了广泛的关注和应用。为了在运行时更好地支持用户态线程,Go语言提供了丰富多样的并发原语,尽管它们带来了编程上的便利,但同时也引入了更多复杂的并发缺陷。为了帮助研究者和开发者深入了解Go语言并发缺陷,本文归纳和总结了它们的特征及其相关研究。同时为了分析最新静态和动态检测工具的原理和使用效果,本文使用开源基准测试集GoBench对它们进行了评估。实验表明,目前的检测工具的检测效果和实用性仍有不足,本文针对这些不足对未来Go语言并发缺陷研究提出了展望。The Go language designed by Google is an open source language born for concurrent programming.Since its release in 2009,it has gained widespread attention and application worldwide.In order to better support user-space threads at runtime,Go provides a rich variety of concurrency primitives.Although they bring programming convenience,they also bring more complex concurrency bugs.To help researchers and developers conduct in-depth investigation,this paper summaries concurrency bugs in Go and the recent related detection technologies.In addition,this paper further evaluates the latest static and dynamic analysis tools that are not covered by the open source benchmark suite GoBench.Experiments show that the practicability of the current detection tools are still being challenging.This paper points out the shortcomings of these detection tools,and puts forward a prospect for the future research on the concurrency bugs of Go.
分 类 号:TP311.52[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.62