# TCPServer locking when calling accept

**URL:** <https://www.ruby-forum.com/t/tcpserver-locking-when-calling-accept/91029>\
**Category:** Ruby\
**Created:** [April 3, 2007, 10:37pm UTC](https://www.ruby-forum.com/t/tcpserver-locking-when-calling-accept/91029 "2007-04-03T22:37:39Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Alex\_MacCaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/a9adbd/32.png) [@Alex\_MacCaw](https://www.ruby-forum.com/u/Alex_MacCaw)\
**Post date:** [April 3, 2007, 10:37pm UTC](https://www.ruby-forum.com/t/tcpserver-locking-when-calling-accept/91029/1 "2007-04-03T22:37:39Z")

</div>

How do I stop the TCPServer ‘locking up’ when I call accept?  
I’m trying to build a passive ftp server.

---

<div class="post-metadata">

**Author:** ![Alex\_MacCaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/a9adbd/32.png) [@Alex\_MacCaw](https://www.ruby-forum.com/u/Alex_MacCaw)\
**Post date:** [April 3, 2007, 11:25pm UTC](https://www.ruby-forum.com/t/tcpserver-locking-when-calling-accept/91029/2 "2007-04-03T23:25:20Z")

</div>

On Wed, Apr 04, 2007 at 05:37:40AM +0900, Alex MacCaw wrote:

> How do I stop the TCPServer ‘locking up’ when I call accept?  
> I’m trying to build a passive ftp server.

Start a new thread for each incoming connection.

There’s example code (a dummy POP3 server) at

> **[WebMD - Better information. Better health.](https://www.webmd.com/?SingletonTutorial)**
>
> The leading source for trustworthy and timely health and medical news and information. Providing credible health information, supportive community, and educational services by blending award-winning expertise in content, community services, expert...

… except RubyGarden seems to be down again, so try entering this URL  
in  
the waybackmachine at [www.archive.org](http://www.archive.org)

Regards,

Brian.

---

<div class="post-metadata">

**Author:** ![Alex\_MacCaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/a9adbd/32.png) [@Alex\_MacCaw](https://www.ruby-forum.com/u/Alex_MacCaw)\
**Post date:** [April 4, 2007, 3:58am UTC](https://www.ruby-forum.com/t/tcpserver-locking-when-calling-accept/91029/3 "2007-04-04T03:58:33Z")

</div>

Alex MacCaw [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> How do I stop the TCPServer ‘locking up’ when I call accept?  
> I’m trying to build a passive ftp server.

When you say ‘locking up’ do you mean it won’t return from the method  
call until a client has connected? If so, this is typically referred to  
as ‘blocking’. There is a method on TCPServer called ‘accept\_nonblock’  
that may give you the behavior you are looking for.

Best regards,

Louis
