ESQL には SHARED CONSTANTS があります。それらが定数であり、複数のスレッドが同じ値にアクセスしても変更されないのに、なぜそれらが必要なのですか。
DECLARE MYCONST SHARED CONSTANT CHAR 'My Constant';
または、一般的に、共有定数が必要な理由を知りたいですか??
ESQL には SHARED CONSTANTS があります。それらが定数であり、複数のスレッドが同じ値にアクセスしても変更されないのに、なぜそれらが必要なのですか。
DECLARE MYCONST SHARED CONSTANT CHAR 'My Constant';
または、一般的に、共有定数が必要な理由を知りたいですか??
この投稿によると、SHARED CONSTANT を読み取るには、通常の CONSTANT よりも時間がかかります。定数を含むすべての共有変数にロック機構があるようです。
ただし、おそらくすべての非共有定数は、各フロー インスタンスの開始時にメモリにコピーされます。多くの定数があり、各フローがそのうちのいくつかにしかアクセスしない場合は、SHARED CONSTANTS の方がパフォーマンスが高いと言えます。
パフォーマンスが問題になる場合は、どのオプションがより短い時間でデータを処理するかをテストします。しかし、すべてのメッセージ フローに最適なソリューションはありません。