Page 259 - 《软件学报》2026年第3期
P. 259

1222                                                       软件学报  2026  年第  37  卷第  3  期


                  [5]   Peng HR, Zhang Y, Ernst MD, Chen JB, Ding BY. GoFree: Reducing garbage collection via compiler-inserted freeing. In: Proc. of the
                     23rd ACM/IEEE Int’l Symp. on Code Generation and Optimization. Las Vegas: ACM, 2025. 675–688. [doi: 10.1145/3696443.3708925]
                  [6]   grpc-go. 2025. https://github.com/grpc/grpc-go
                  [7]   Memory retained after connections closed. 2025. https://github.com/grpc/grpc-go/issues/4758
                  [8]   Liu ZH, Zhu SF, Qin BQ, Chen H, Song LH. Automatically detecting and fixing concurrency bugs in Go software systems. In: Proc. of
                     the 26th ACM Int’l Conf. on Architectural Support for Programming Languages and Operating Systems. ACM, 2021. 616–629. [doi: 10.
                     1145/3445814.3446756]
                  [9]   Veileborg OH, Saioc GV, Møller A. Detecting blocking errors in Go programs using localized abstract interpretation. In: Proc. of the 37th
                     IEEE/ACM Int’l Conf. on Automated Software Engineering. Rochester: ACM, 2022. 32. [doi: 10.1145/3551349.3561154]
                 [10]   Selakovic M, Pradel M. Performance issues and optimizations in JavaScript: An empirical study. In: Proc. of the 38th Int’l Conf. on
                     Software Engineering. Austin: ACM, 2016. 61–72. [doi: 10.1145/2884781.2884829]
                 [11]   Chabbi  M,  Ramanathan  MK.  A  study  of  real-world  data  races  in  Golang.  In:  Proc.  of  the  43rd  ACM  SIGPLAN  Int’l  Conf.  on
                     Programming Language Design and Implementation. San Diego: ACM, 2022. 474–489. [doi: 10.1145/3519939.3523720]
                 [12]   Honnef D. Staticcheck. 2025. https://staticcheck.dev/
                 [13]   Go. vet. 2025. https://pkg.go.dev/cmd/vet
                 [14]   GolangCI. Golangci-lint. 2025. https://golangci-lint.run/
                 [15]   Secure Go. gosec. 2025. https://github.com/securego/gosec
                 [16]   Gechev M. revive. 2025. https://github.com/mgechev/revive
                 [17]   Park YG, Goldberg B. Reference escape analysis: Optimizing reference counting based on the lifetime of references. ACM SIGPLAN
                     Notices, 1991, 26(9): 178–189. [doi: 10.1145/115866.115883]
                 [18]   Park YG, Goldberg B. Escape analysis on lists. In: Proc. of the 1992 ACM SIGPLAN Conf. on Programming Language Design and
                     Implementation. San Francisco: ACM, 1992. 116–127. [doi: 10.1145/143095.143125]
                 [19]   Go. A guide to the go garbage collector. 2025. https://go.dev/doc/gc-guide
                 [20]   Jump M, McKinley KS. Cork: Dynamic memory leak detection for garbage-collected languages. In: Proc. of the 34th Annual ACM
                     SIGPLAN-SIGACT Symp. on Principles of Programming Languages. Nice: ACM, 2007. 31–38. [doi: 10.1145/1190216.1190224]
                 [21]   Go. The Go programming language specification—Interface types. 2025. https://go.dev/ref/spec#Interface_types
                 [22]   Go. The Go programming language specification—Slice types. 2025. https://go.dev/ref/spec#Slice_types
                 [23]   Go. The Go programming language specification—Map types. 2025. https://go.dev/ref/spec#Map_types
                 [24]   CockroachDB. cockroach. 2025. https://github.com/cockroachdb/cockroach
                 [25]   Marr H. Making a Go program run 1.7x faster with a one character change. 2022. https://hmarr.com/blog/go-allocation-hunting/
                 [26]   Honnef D. SA4031—Checking never-nil value against nil. 2025.https://staticcheck.dev/docs/checks/#SA4031
                 [27]   Honnef D. S1009—Omit redundant nil check on slices, maps, and channels. 2025. https://staticcheck.dev/docs/checks/#S1009
                 [28]   Honnef D. S1020—Omit redundant nil check in type assertion. 2025. https://staticcheck.dev/docs/checks/#S1020
                 [29]   Honnef D. S1031—Omit redundant nil check around loop. 2025. https://staticcheck.dev/docs/checks/#S1031
                 [30]   Honnef D. SA5011—Possible nil pointer dereference. 2025. https://staticcheck.dev/docs/checks/#SA5011
                 [31]   GitHub. CodeQL. 2025. https://codeql.github.com/
                 [32]   GitHub. QL language reference. 2025. https://codeql.github.com/docs/ql-language-reference/
                 [33]   Go. The Go programming language specification. 2025. https://go.dev/ref/spec
                 [34]   The MITRE Corporation. CVE. 2025. https://www.cve.org/
                 [35]   The MITRE Corporation. CWE. 2025. https://cwe.mitre.org/index.html
                 [36]   Go Security team. Go vulnerability database. 2025. https://pkg.go.dev/vuln/
                 [37]   The MITRE Corporation. CWE—Helpful views. 2025. https://cwe.mitre.org/data/index.html#helpful_views
                 [38]   The MITRE Corporation. Weaknesses in the 2022 CWE Top 25 most dangerous software weaknesses. 2025. https://cwe.mitre.org/data/
                     definitions/1387.html
                 [39]   The MITRE Corporation. Weaknesses in software written in C++. 2025. https://cwe.mitre.org/data/definitions/659.html
                 [40]   Go. panic.go. 2025. https://github.com/golang/go/blob/master/src/runtime/panic.go
                 [41]   Costa DE, Mujahid S, Abdalkareem R, Shihab E. Breaking type safety in Go: An empirical study on the usage of the unsafe package.
                     IEEE Trans. on Software Engineering, 2022, 48(7): 2277–2294. [doi: 10.1109/TSE.2021.3057720]
                 [42]   GitHub. REST API endpoints for search. 2025. https://docs.github.com/en/rest/search/search?apiVersion=2022-11-28
                 [43]   PingCAP. goroutine/memory leak when streaming query been cancelled. 2025. https://github.com/pingcap/tidb/issues/27353
   254   255   256   257   258   259   260   261   262   263   264