[過去ログ]
Rust part21 (1002レス)
Rust part21 http://mevius.5ch.net/test/read.cgi/tech/1692105879/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
351: デフォルトの名無しさん [sage] 2023/09/21(木) 04:39:08.18 ID:uFUX5dn+ まずプロセスを分けるメリットがない CPUコアスレッド数のスレッドを立ち上げれば一つのプロセスでそのマシンのリソースを使い切れる ただし通信待ちでスレッドが止まったらその分のCPUリソースを無駄にしてしまうため各スレッドで複数のタスクを動かす ただし各スレッドが抱えるタスク数は偏りがちなことが知られているため暇なスレッドは他からタスクを盗んで実行できるようにする 以上のスケジューリングをするのがRustのtokio http://mevius.5ch.net/test/read.cgi/tech/1692105879/351
356: デフォルトの名無しさん [sage] 2023/09/21(木) 13:31:34.10 ID:cACw6b27 >>351 MySQLやPostgreSQLみたいな普通のDBMSでは 単一プロセスがデーモンとして常駐してファイル更新 を一元管理するのが前提となっているが、 SQLiteでは、そのような常駐プロセスが 存在しなくて、各アプリがSQLiteのライブラリ プログラムを呼び出して、ライブラリの関数が 排他制御を行なって単一ファイルを壊さないように ロックしながら互いに強調しつつ、部分書き換えや 部分読み込みを行っている。 つまり、SQLiteは管理を担う単一の常駐プログラム がなくて、個々のアプリ(の中のライブラリ)が 協調動作するようになっている。 だから、プロセス間で同期を取る仕組みが必要となる。 しかし、CreateMutexでは、ユニークな名前が必要 となってしまい、その名前を決めるのがメンドクサイ。 一方、LockFile だとファイルのパス名で自動的に ユニークの名前に出来てしまうから、非常に簡単に 安全に正しくロックできる。 http://mevius.5ch.net/test/read.cgi/tech/1692105879/356
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.034s