Hi list, I have a Go app that, among others, continuously parses XML files to extract dynamic info. This seems to cause a strange behavior in the Go runtime, according to which the underlying Go threads keep increasing over time.
I verified this by commenting out several parts of my app code, coming up to a minimal working version which essentially calls xml.Unmarshal repetitively. You can have a look at it here: https://gist.github.com/anastop/e533628e5624c81b8822fda512aefaab When executing this minimal version on my platform (Ubuntu 16.04.2, Xeon E5-2699 / 88 CPUs, go1.8), I observe that it starts with 4 Linux threads in total and within 4 minutes it reaches e.g. 28 (and goes up), which is unusual w.r.t. what I observe with other Go apps. The problem becomes even worse when this code becomes part of my larger app, where I have observed Go thread counts reaching up to several hundreds (e.g. 300-400). Just to mention that I do not see any other strange behavior like increase in memory usage. As I want this app to introduce a minimal level of noise to other co-running apps, I am wondering whether this is a known/expected behavior, or I should resort to other workarounds to meet my requirements. Thanks in advance, Nikos -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.