If I understand this correctly, there's a difference between deleting a 
reference to 50 GB (like an inode), and actually writing 50 GB.

When you write to an output port, you are writing to a buffer in memory. This 
prevents the slow downs you've witnessed, because storage mediums are 
comparably slow. "Flushing" with (flush-output) or plumbers on port closure 
actually sends bytes outside of the process.

I wouldn't try using the same port after deleting a file. If Racket and the 
operating system initially agreed on a file descriptor that is now invalid, 
then you'll need to address that by opening a new port.

Note that I don't Racket's implementation details here. I'm recalling what I've 
seen happen across languages.

On 12/19/21 11:50 AM, Jacob Jozef wrote:

> Hi
>
> I start a thread printing a file. When the file will be very long (say 50 GB) 
> the thread takes too much time and I kill it when it takes more time than I 
> want to permit. Outside the thread I clean up. Closing the output-port before 
> deleting the file takes much time. But to my surprise I can delete the file 
> before closing the port, which hardly takes time.
>
> Nice.
>
> Is this intended behaviour?
>
> After deleting the file, the port remains open, but writing to it does 
> nothing. Correct?
>
> Thanks, Jos
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> [https://groups.google.com/d/msgid/racket-users/EEC04679-E526-4215-B4DE-502B5B10567A%40hxcore.ol](https://groups.google.com/d/msgid/racket-users/EEC04679-E526-4215-B4DE-502B5B10567A%40hxcore.ol?utm_medium=email&utm_source=footer).

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/076c95f8-1d49-4294-9df8-73b1b39b1f01%40sagegerard.com.

Reply via email to