喫茶XRAYトップページ

[スレッド全体
]

[6304] Re7:TServerSocketの使用方法について返信 削除
2012/8/28 (火) 16:39:16 福士
横から失礼します。

TServerSocket(dclsocketsXXX.bpl)を使う場合の注意事項を補足します。

1.booさんの最初の書き込みのとおり、TServerSocketおよびTClinetSocketで
送受信を行うときはコンポーネントではなくイベントハンドラの引数で
渡されるSocket(TCustomWinSocket)を使う。これはそもそもそういうもの
だったはずです(ヘルプに明記されていたはず)。

2.いまどきのマルチプロセッサ環境ではなるべくIndy(TIdTCPServer)を使う。
これは公式に聞いた話ではなくまた聞きなのですが、Borland(当時)の
有償サポートに問い合わせたところTServerSocketはSMP環境では
正常に動作しないことがあり、そのため最近のDelphiでは標準で
IDEに組み込まれていないのだ、という話でした。
なおTIdTCPServerのOnExecuteイベントはUIとは別のスレッドで呼び出されるので
UI操作をするときはTThread.Synchronizeを使う必要があります(先日これに
はまった)。

[6305] Re8:TServerSocketの使用方法について返信 削除
2012/8/28 (火) 17:58:48 Mr.XRAY
▼ 福士さん,どうもです.

場末の喫茶店にご来店ありがとうございます.

> 横から失礼します。

失礼していただき感謝です.
この方面はほとんど無知ですので助かります.

[6306] Re8:TServerSocketの使用方法について返信 削除
2012/8/29 (水) 11:29:03 boo
福士様

TServerSocketの情報ありがとうございます。

SMP環境で正常動作しない問題を把握しておりませんでした。
TIdTCPServerを使用する方向で検討します。
ありがとうございました。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.82