def sync(self):
with dbm.open(self.db, self.flag) as db:
for k, v in self.dict.items():
f = BytesIO()
p = Pickler(f, protocol=self._protocol)
p.dump(v)
db[k] = f.getvalue()
db.sync()