nodejs 里面 fs 模块提供了 readFile 和 readFileSync 同步和异步的 api
而 mysql 库里面的 query 都是同步的,而没有 querySync 之类的方法
数据库的读写和文件的 IO 有什么区别?是做不了还是只是保持异步的风格?
谢谢~
PHPz2017-04-17 15:30:14
ご招待いただきありがとうございます。ノードの同期インターフェイスは開発者の便宜を図るためのものであり、ネイティブに提供されています。
他のいくつかのデータベース インターフェイスは、他の作成者組織によって実装されたサードパーティ モジュールです。
通常の状況では、非同期で記述することをお勧めします。もちろん、エレガントではないさまざまなコールバックが存在します。このとき、コードを最適化して実現するために、ネイティブによって提供されるさまざまな同期メソッドを使用することをお勧めします。優雅。
例: Generator / Promise / Async およびその他のネイティブ ソリューション。
または co などでカプセル化された主流の非同期処理ソリューション
迷茫2017-04-17 15:30:14
実際には処理に違いはありませんが、readFile
はネイティブAPIであり、公式がこの種の同期呼び出しを提供しています。
そして query
は、node-mysql モジュールによって提供される API であり、ユーザーにそのようなメソッドを提供しません。
実際には、ノード v7+ が async
と await
をサポートできるのは偶然です。
次のようなもの: