サイトアイコン Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Delphi 10.4におけるランタイムライブラリの強化

Delphiのランタイムライブラリは、製品の基盤のひとつです。VCLやFireMonkeyといったUIライブラリやデータベースアクセスライブラリ、さらには多くのサードパーティコンポーネントも、コアRTLに依存しているからです。 そのため、RTLの変更はすべての開発者に影響を及ぼすので、その変更について関心が高いのです。 以下は、まもなくリリースされるバージョンでの主要な変更点です。

ビットカウント標準関数

一般的な低レベルのビット処理操作を行うための、新しい標準関数を導入します。

従来のクラスへの追加機能

改善されたストリームバッファ

ベースクラスTStreamのCopyFrom関数では、データをコピーするのに使用する固定長のバッファ(60Kに設定)がありました。これは、大きいストリームをコピーする際には大変非効率でした。新しいデフォルトは1MB です。ただし、メソッドには追加のパラメータが用意され、行うコピー操作(ソースおよびターゲットストリーム)によって固有のバッファサイズを指定できるようになります。

[crayon-676312315461c627761656/]

パフォーマンスの最適化

FreeAndNil

FreeAndNilプロシージャのシグネチャをアップデートしました。これは、インターフェイス参照や他のサポートされないデータ型での使用を回避するためのものです。新しく、TObjectへの参照を要求するように宣言されています。

[crayon-6763123154628767528484/]

これは、FreeAndNilの正しくない使い方をすると、コンパイルエラーが発生することを意味します。従来は、誤った使用法が検出されず、発見が困難なバグを誘発していました。パラメータはconstで宣言されていますが、参照渡しの変数は実際には変更されている点にご注意ください。

さまざまな追加機能

これは、期待されている改善のごく一部です。このほかにも、並列プログラミングライブラリ、AppTethering、RESTおよびHTTPクライアントライブラリ、その他のDelphi RTLのサブシステムについても、改善/強化の作業を行っています。これらの改善が、たとえ小さなものであっても、Delphi開発者の皆さんが日々取り組んでいる作業に役立つことを願っています。


この記事は、RAD Studioの将来のリリースに関するプレビューです。製品品質やスケジュール等の理由により、紹介した機能の提供が変更になる可能性があります。製品が正式にリリースされるまで、最終的な機能、スペック等について保証されません。詳細は、まもなく開催されるWebセミナーをご覧ください。

モバイルバージョンを終了