Project

General

Profile

Misc #12474

Updated by nobu (Nobuyoshi Nakada) about 4 years ago

## fork(2) 

 Windows already has related features like `CreateProcess`, CreateProcess, but for servers and workers fork is required for source code compatibility of existing scripts, 
 which are written for Unix. 

 ## nonblocking IO 

 * To check socket's availability by `IO#read_nonblock` IO#read_nonblock https://github.com/ruby/ruby/pull/1089 
 * `O_NONBLOCK` O_NONBLOCK 

 ## tz 

 Get IANA timezone name of current timezone from OS. 

 ## Remove a file which is opened by another process 

 If the process opens the file with `CreateFile` CreateFile with `FILE_SHARE_DELETE` FILE_SHARE_DELETE flag, another process can remove the file. 
 But in that case processes can't remove its parent folder. 
 https://bugs.ruby-lang.org/issues/11218 

 ## symlink 

 
 Windows has mklink and SeCreateSymbolicLinkPrivilege, but it has some limitations. 
 http://k-takata.o.oo7.jp/diary/2013-04.html#03 
 https://twitter.com/n0kada/status/570232516545638400 

 ## fd 
 ### Generic handling of file, pipe, socket by fd 
 ### fd passing to child process other than 0,1,2 
 ### Get access mode from fd/HANDLE 
 ### System side append mode 

 ## socket 

 `CloseHandle` CloseHandle should work with socket. 

 ## writev(2) 

 https://twitter.com/okuoku/status/670212493134852097 
 https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa365749%28v=vs.85%29.aspx 

 ## ANSI color code 

 http://srad.jp/story/16/02/09/0639223/ 

 ## UNIXSocket 

 We can emuate UNIXSocket with named pipe? 

Back