Closed4

Tauri で thread safe ではない処理をいい感じに扱いたい(でも thread とかよくわからない) #Rust

かんなかんな

やりたいこと

bitcoindevkit/bdkTauri でシンプルなウォレットを実装する
とりあえず、ハードコードしたウォレットの残高をフロントに表示したい

困っていること

フロントとインタラクトするメソッドは
​execute_promiseexecute_promise_sync のなかで実装するが、Send が必要。
でも bdk::wallet::Wallet のなにかが満たしていなくて中で実行することができない。
んだと思う。

かんなかんな

Tauri

フロントから Rust プロセスを呼び出すには invokepromisified がある。
いま問題なのは promisified で呼び出したときは threadpool でマルチスレッドで処理されるため、BDK の処理をその中で行えないこと?

invoke の場合

https://tauri.studio/en/docs/usage/recipes/command#synchronous-commands
これはフロントには値は戻せないという理解であっているのだろうか :thinkig_face:

invoke の方では実行できるなら、invoke して処理をしておいて、あとからもう一度その結果を取得しにいくようにアプリケーションの処理として実装すればやりたいことができるのだろうか?
でもちゃんとリクエストの ID を管理しないといけなさそうな気がするか。

かんなかんな

invoke の方では実行できるなら、invoke して処理をしておいて、あとからもう一度その結果を取得しにいくようにアプリケーションの処理として実装すればやりたいことができるのだろうか?

invoke のほうは実行できた
のでその結果をどこかに保持してく?

並列プログラミング初心者過ぎてやばいので勉強しないと進められない...。

このスクラップは2022/05/15にクローズされました