こんにちわ。
システム開発部のK.Mです。
今回は前回触ったDFrameに関してもう少し深掘りして行きます。
深掘りの前に、前回の実装で良くない実装をしていた部分を修正していきます。
HttpClientは使い回す実装にしよう
前回の記事の「APIにアクセスする処理を入れていきます。」で説明している箇所にて、指定された回数分ExecuteAsync()
のみが動くものかと考えており、HttpClientをSetupAsync()
内でnewをして、TeardownAsync()でDisposeしていました。
しかし、今回の調査時に判明したのですが、テスト実施の1セット内でSetupAsync()
->ExecuteAsync()
->TeardownAsync()
という流れになっており、次の2セット目に入った場合に、再度SetupAsync()
->ExecuteAsync()
->TeardownAsync()
を同じように実行する形になっていたため、HttpClientを毎回newしてDisposeする形になっていました。
HttpClientは本来再利用することを推奨されているのですが出来ていなかったので、まずはこちらを修正していきます。
修正内容としては、Workloadのコンストラクタでnewして、デストラクタで一応Disposeするようにしたうえで、SetupAsync()のnew関連の処理と、TeardownAsync()のDispose処理を削除しておきます。
続きを読む