サーバープラグインは、サーバーの「サービス」にアクセスできます。サービスインタフェースは、プラグインが呼び出すことができるサーバー機能を公開します。補完し、次の特徴があります。サービスによって、プラグインは通常の関数呼び出しを使用して、サーバー内部のコードにアクセスできます。サービスには移植性があり、複数のプラットフォームで動作します。インタフェースにはバージョン管理メカニズムがあるため、サーバーによってサポートされるサービスバージョンを、プラグインバージョンに対してロード時にチェックできます。バージョン管理により、サーバーが提供するサービスのバージョン、およびプラグインが予期または必要とするサービスのバージョンの間の互換性の問題が防止されます。現在のサービスには次のものが含まれており、ほかのサービスも実装できます。プラグインがエラーの報告およびエラーメッセージの指定を行うことができるサービス。サーバーはエラーログにメッセージを書き込みます。プラットフォーム間で一貫性のある結果を生成する、文字列の書式設定サービス。プラグインがスレッドスケジューラを選択するためのサービス。文字列操作のためのサービス。メモリー割り当てサービス。プラグインがスリープまたは停止することを報告するためのサービス。違いは次のとおりです。サーバーからプラグインを使用できます。呼び出しを開始するのは、プラグインを呼び出すサーバーです。これにより、サーバー機能の拡張、またはサーバーの処理に関する通知を受け取るための登録をプラグインで行うことができます。プラグインサービスインタフェースでは、プラグインはサーバー内部のコードを呼び出すことができます。呼び出しを開始するのは、サービス関数を呼び出すプラグインです。これにより、多くのプラグインがサーバーにすでに実装されている機能を使用できるようになり、プラグインに個別に機能を実装する必要がなくなります。サービスを参照してください。このセクションの残りの部分では、サービスとして使用可能なサーバー機能をプラグインで使用する方法について説明します。サービスを使用する「デーモン」プラグインの例のソースも参照してください。ディレクトリにあります。ディレクトリ内を参照してください。関連するファイルは次のとおりです。使用可能なすべてのサービス固有のヘッダーファイルをインクルードする「包括的な」ヘッダーです。ような名前が付いています。各サービス固有ヘッダーには、対象となるサービスの完全な使用法を示すドキュメントを提供するコメントがあり、使用可能なサービス関数、それらの呼び出しシーケンス、および戻り値が含まれています。ヘッダーファイルをプラグインのソースファイルでインクルードする必要があります。<mysql/plugin.h>これによってセットアップのコストが増えるわけではありません。このファイルにはすべてのプラグインで必要となる定義および構造体が含まれているため、プラグインはいずれにしてもこのファイルをインクルードする必要があります。サービスにアクセスするために、プラグインはほかの関数と同様にサービス関数を呼び出します。...);サーバーがエラーログに書き込むエラーを報告するには、最初にエラーレベルを選択します。これらのレベルを定義しています。ライブラリでリンクする必要があります。ファイルに次の内容を指定します。ファイルに次の内容を指定します。