const resources = new Map()
exports.add = function(resource, teardown) {
resources.set(resource, teardown)
}
exports.remove = function(resource) {
resources.delete(resource)
}
if (global.Bare) global.Bare.on('exit', run)
else global.process.on('exit', run)
function run() {
for (const [resource, teardown] of resources) {
teardown(resource)
}
}