Bezpieczne operacje na plikach za pomocą libjio
libjio to biblioteka działająca w przestrzeni użytkownika i służąca do księgowanych, transakcyjnych operacji Wejścia/Wyjścia (I/O). Oferuje proste API do wykonywania i cofania transakcji, oraz zestaw funkcji typu open(), read(), write() wykonujących standardowe operacje na plikach (threadsafe, operacje atomowe). Biblioteka gwarantuje integralność pliku, nawet po nieoczekiwanym błędzie. Napisana jest w C i działa na większości systemów Uniksowych. Dostępne są także moduły dla Pythona 2 i 3.
Instalacja jest prosta i składa się z make && make install. By zbudować moduł Pythona 2 wystarczy make python2 && make python2_install. Odpowiednio make python3 && make python3_install dla modułu Pythona 3.
Poniżej przykład wykorzystania libjio z poziomu Pythona:
import libjio
f = libjio.open("filename.txt", libjio.O_RDWR | libjio.O_CREAT)
t = f.new_trans()
t.add_w("Hello world!", 0)
t.commit()
Comment article