use threads; use threads::shared; use IO::Socket; my $feed = threads->new (\&getData); sub getData { my $remote = IO::Socket::INET->new("somehost:port") or die "Can`t open feed\n"; print "Foo.\n"; while ( <$remote> ) { print } }