http://qs321.pair.com?node_id=1195651


in reply to Re^4: sysread() is deprecated on :utf8 handles
in thread sysread() is deprecated on :utf8 handles

Hello mje,

You can use read as a temporary solution it does not give the warning, but it is not the same as sysread.

From the read documentation:

The call is implemented in terms of either Perl's or your system's native fread(3) library function. To get a true read(2) system call, see sysread.

I just tested with your code and the output looks ok:

$ perl test.pl child started Cannot connect to child socket - Connection refused Cannot connect to child socket - Connection refused Cannot connect to child socket - Connection refused connection from 127.0.0.1:33980 Child reading socket shutdown 1 Child got /<element>Hello</element>/ connection from 127.0.0.1:33982 Child reading socket Child EOF Child reading socket Child got /<element>Hello2</element>/ Child reading socket Child EOF shutdown 2 closing socket Killing child waiting on child parent exiting

In comparison with sysread:

$ perl test.pl child started Cannot connect to child socket - Connection refused Cannot connect to child socket - Connection refused Cannot connect to child socket - Connection refused connection from 127.0.0.1:33788 Child reading socket sysread() is deprecated on :utf8 handles at test.pl line 108. Child got /<element>Hello</element>/ connection from 127.0.0.1:33792 Child reading socket sysread() is deprecated on :utf8 handles at test.pl line 108. Child got /<element>Hello2</element>/ shutdown 1 Child reading socket sysread() is deprecated on :utf8 handles at test.pl line 108. Child EOF Child reading socket sysread() is deprecated on :utf8 handles at test.pl line 108. Child EOF shutdown 2 closing socket Killing child waiting on child parent exiting

Give it a try if it meets your criteria.

I tested on:

$ perl -v This is perl 5, version 24, subversion 1 (v5.24.1) built for x86_64-li +nux-gnu-thread-multi (with 67 registered patches, see perl -V for more detail) Copyright 1987-2017, Larry Wall Perl may be copied only under the terms of either the Artistic License + or the GNU General Public License, which may be found in the Perl 5 source ki +t. Complete documentation for Perl, including FAQ lists, should be found +on this system using "man perl" or "perldoc perl". If you have access to + the Internet, point your browser at http://www.perl.org/, the Perl Home Pa +ge.

Hope this helps, BR.

Seeking for Perl wisdom...on the process of learning...not there...yet!