問題タブ [virtualfilesystem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
63 参照

winapi - 上書きでフォルダの名前を変更すると、Cloud Files API のソース フォルダが削除されます

Cloud Files API を使用して仮想ファイル システムを作成しています。フォルダーの名前変更/移動および削除操作を実装しようとしています。上書きシナリオ (ターゲット フォルダーが存在する場合) を使用したフォルダーの名前変更の動作は混乱を招きます。Windows Explored で、Z:\Folder2 が既に存在しているときに、Z:\Folder1 を Z:\Folder2 に名前変更しようとしています。名前の変更操作が実行される前に、ソース フォルダーは CF_CALLBACK_TYPE_NOTIFY_DELETE コールバックを呼び出して削除されています。

Cloud Filter API で取得するコールバックのシーケンスは次のとおりです。

  1. CF_CALLBACK_TYPE_NOTIFY_DELETE がソース フォルダーで呼び出されます。
  2. ソース フォルダの各ファイルがターゲット フォルダに移動さ​​れています。
  3. CF_CALLBACK_TYPE_NOTIFY_DELETE_COMPLETION がソース フォルダーで呼び出されます。

その結果、移動操作の前にすべてのファイルが削除されるため、CF_CALLBACK_TYPE_NOTIFY_DELETE コールバック内のストレージ内のフォルダーを削除する方法がありません。また、CF_CALLBACK_TYPE_NOTIFY_DELETE 内で削除操作と移動操作を区別する方法はありません (したがって、移動操作では無視できます)。

Cloud Files API で削除および名前変更/移動のコールバックを適切に実装するにはどうすればよいですか?

0 投票する
0 に答える
46 参照

database - 仮想ファイル システムを使用した lmdb

stm32 マイクロコントローラ (ARM Cortex M4) で lmdb を使用したいと考えています。運用システムはありませんが、ファイルシステムとして littlefs がインストールされています。

sqlite には、関数 sqlite3_vfs_register() を使用して "VFS" と呼ばれるメカニズムが存在します。ここで、littlefs を sqlite にリンクできますが、lmdb に似たものは見つかりませんでした。

現時点では、3 つのメカニズムのみが表示されます。

  1. 「VFS」を登録する機能ですが、残念ながら見つかりませんでした
  2. システム コール「open、read、write など」を littlefs-functions にリダイレクトします。
  3. システム コール「open、read、write など」を littlefs-functions に置き換えるパッチを作成します。

私の質問は

  1. 独自のファイルシステムを持つ stm32 で lmdb を使用することは可能ですか、それとも他のデータベースを使用する必要がありますか?
  2. lmdb を littlefs のようなファイルシステムに接続するための最良のメカニズムは何ですか?