属性:call_after_global_init_slot
重要
VAR_INPUT 属性を使用する関数またはメソッドでの宣言は、コンパイルエラーにつながります。理由:この場合、呼び出し時に入力変数は不明です。これは、オンライン変更中に暗黙的に発生します。
重要
この属性でマークされた関数は、コンパイルされてコントローラーにダウンロードされた場合にのみ実行されます。
関数がプロジェクトの他の場所で呼び出されない場合、コンパイラはその関数をビルドから除外できます。関数を常にコンパイルして実行できるようにするには、プラグマを追加してください {attribute 'linkalways'} 関数宣言へ。
または、有効にすることもできます 常にリンクする 上の関数のプロパティダイアログにあるオプション ビルド タブ。
このオプションがないと、初期化関数は正しく設定されているように見えても、実行されない可能性があります。
このプラグマの効果は、このように装飾されたすべての関数とプログラムがグローバル初期化の後に呼び出されることです。属性値を使用して、呼び出しの順序を定義します。
属性がメソッドに設定されている場合、親機能ブロックのすべてのインスタンスが決定されます。すべてのインスタンスは、指定されたスロットで呼び出されます。この場合、インスタンス間の順序には影響しません。
構文:
{attribute 'call_after_global_init_slot' := '<slot>'}
挿入場所 | 関数とプログラムの宣言部分の上の最初の行 |
| 呼び出し順にランキングを定義する整数値 値が小さいほど、呼び出しが早く行われます。複数の関数ブロックの属性のランクが同じである場合、それらの呼び出しの順序は不定のままです。 |
詳細については、以下を参照してください。 Global Init Slots