Я читаю файл с диска на Ma c. Следующий код в функции продолжает увеличивать использование памяти на go. У меня нет какой-либо переменной, чтобы ссылаться на «содержимое», просто попробуйте прочитать его и подумайте, что система выпустит его после выхода из функции. но это не так. Система фактически освобождает память только после завершения for-l oop.
Мой вопрос в том, как позволить системе освободить объект «содержимого» после выхода из функции чтения? Я даже задерживаю 10 секунд после вызова функции в l oop.
import Cocoa
class ViewController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override var representedObject: Any? {
didSet {
// Update the view, if already loaded.
}
}
@IBAction func onRead(_ sender: NSButton) {
for n in 0..<100
{
readFile()
sleep(10)//not enough time for system to recycle the memory??
}
}
func readFile()
{
print ("test read file")
let content = FileManager.default.contents(atPath: "/Users/swiftuser/Documents/testfile.txt")
}
}