Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
Socket[Close] - 開かれた TCP/IP 接続の終了
使い方
Close(sid)
パラメータ
sid - 有効な開かれたソケット ID
説明
手続き Close は、Sockets パッケージの Sockets[Open] または Sockets[Serve] ルーチンのいずれかを用いて作成される、開かれたソケットを閉じる際に使用されます。この手続きはソケットでの開かれた接続を終了し、そのソケットで内部的に使用されているリソースを解放します。
引数 sid は、閉じるソケットを表す識別子です。この引数は、有効かつ開かれたソケット ID でなくてはなりません。
ソケットの利用が終わり次第、すぐにその開いたソケットを閉じるよう、常に心がけましょう。ほとんどのシステムでは、あるプロセスが同時に持つことのできる開かれたソケットの数には、厳しい制限があります。Sockets パッケージは、自身にそのような制限を課します(ほとんどの場合、基となるオペレーティングシステムによって課せられる制限に一致します)。
ソケットを閉じる際には、そのソケットが使用するリソースを解放し、制限の最大値を超えないように新しいソケットの作成ができるようにします。(いくつかのシステム上では、ソケットはファイルとして扱われます。そして開かれた各ソケットは、あるプロセスが保持する開かれたファイルの数に影響を及ぼします。このファイルの数も、通常はオペレーティングシステムによって制限されます。)
Close が呼び出されると、そのソケットに対して書かれたバッファにあるデータをフラッシュし、接続をシャットダウンしようと試みます。接続のリモート終点には、ローカルの終点で受け付けられるデータはそれ以上ないという、通知が送られます。接続の終了に成功すると、Close は値 true を返します。エラーが生じる状況では、値 false が返されます。
Sockets パッケージそのものが不要なメモリとして回収の対象になった場合、あるいは Maple の処理が通常の方法で終了される場合には、全ての開かれた接続をがシャットダウンされます。たとえこの動作がいずれ起こると保証されていても、ユーザが制御できない事態に陥ることもあります。そのような場合、ソケットの接続が Close により通常のように終了されると考えてはなりません。
例
with( Sockets ): sid := Open( "localhost", "echo" );
Close( sid );
参照
用語集 - socket, Sockets パッケージの紹介, Sockets[Open], Sockets[Serve]
Download Help Document