큰 개체 그래프 (76295 개체)를 인코딩하는 데 NSKeyedArchiver를 사용하고 있습니다. NSKeyedArchiver는 많은 시간이 걸리지 만 NSKeyedArchiver가 모든 메모리를 돌려주지는 못합니다.NSKeyedArchiver를 사용하여 대형 개체 그래프를 인코딩하면 메모리가 걸립니다.
누수 검사를 사용한 후 코드가 전혀 누수되지 않는 것으로 나타 났지만 어떤 이유로 든 인코딩이 완료된 후에 모든 메모리를 되돌려주지 않습니다.
encode 메서드를 여러 번 호출하면 점점 더 많은 메모리가 사라집니다.
내가 좋아할만한 의견이 있으십니까?
P. 데이터베이스 (sqlite) 또는 CoreData는 위에서 언급 한 것과 같은 큰 개체 그래프로 인해 매우 저조한 것처럼 보이기 때문에 대안이 아닙니다.
는 실제로 객체를 인코딩하지 않습니다 NSKeyedArchiver
당신이 큰 개체 그래프 심하게 SQLite는/코어 데이터의 크기를 말할 때 당신은 무엇을 의미 명확하지 않다. 이 문제에 관한 대부분의 보고서는 아니 었습니다 ... –
전 매장 부분을 다시 구현하여 모든 데이터를 sqlite3에 저장합니다. 데이터를 저장하는 데는 최대 3 분 (!!) 분이 소요됩니다. 내가 뭔가를 놓친 건지, NSCoder (keyed archiver)를 사용하는 것에 대한 매우 나쁜 수행 대안처럼 보입니다. 어떤 방법으로 더 빠르게 만들 수 있습니까? sqlite를 사용할 때 111000 개의 행을 저장하는 것이 너무 느립니다. –