}
// TODO: Ruby locks the string here
waitReadable(myOpenFile.getMainStreamSafe());
myOpenFile.checkClosed(getRuntime());
// We don't check RubyString modification since JRuby doesn't have
// GIL. Other threads are free to change anytime.
int bytesRead = myOpenFile.getMainStreamSafe().getDescriptor().read(len, str.getByteList());