concurrencytest icon indicating copy to clipboard operation
concurrencytest copied to clipboard

Resource warning due to unclosed IO stream

Open giampaolo opened this issue 4 years ago • 0 comments

Hello and thanks for this useful tool. I am trying to integrate it into psutil here: https://github.com/giampaolo/psutil/pull/1709. After running the parallel suite I get a bunch of resource warnings (as many as the number of workers):

/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=11>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=10>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=9>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=7>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=6>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=5>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=12>
  return self.run(*args, **kwds)
/home/giampaolo/.local/lib/python3.6/site-packages/unittest2/suite.py:87: ResourceWarning: unclosed file <_io.BufferedReader name=8>
  return self.run(*args, **kwds)

I was able to fix the problem by adding atexit.register(stream.close) after this line but am not sure if it's the best solution: https://github.com/cgoldberg/concurrencytest/blob/edf88b19d3fa3b9add89dde9e69c53bde1239163/concurrencytest.py#L96

giampaolo avatar Apr 25 '20 01:04 giampaolo