Fix resource leaks with <duplex-stream>

db4
Slava Pestov 2008-02-16 02:19:19 -06:00
parent 7217e6756a
commit 80e580f91d
2 changed files with 14 additions and 5 deletions

View File

@ -32,9 +32,13 @@ HINTS: do-line vector string ;
readln [ do-line (reverse-complement) ] [ show-seq ] if* ;
: reverse-complement ( infile outfile -- )
<file-writer> >r <file-reader> r> <duplex-stream> [
500000 <vector> (reverse-complement)
] with-stream ;
<file-writer> [
swap <file-reader> [
swap <duplex-stream> [
500000 <vector> (reverse-complement)
] with-stream
] with-disposal
] with-disposal ;
: reverse-complement-in
"extra/benchmark/reverse-complement/reverse-complement-in.txt"

9
extra/raptor/raptor.factor Normal file → Executable file
View File

@ -45,8 +45,13 @@ USING: io io.files io.streams.lines io.streams.plain io.streams.duplex
listener ;
: tty-listener ( tty -- )
[ <file-reader> ] [ <file-writer> ] bi <duplex-stream>
[ listener ] with-stream ;
dup <file-reader> [
swap <file-writer> [
<duplex-stream> [
listener
] with-stream
] with-disposal
] with-disposal ;
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!