예제 #1
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
//ORIGINAL LINE: private long flushFreeIds0(ByteBuffer writeBuffer) throws java.io.IOException
        private long FlushFreeIds0(ByteBuffer writeBuffer)
        {
            _channel.position(_channel.size());
            writeBuffer.clear();
            while (!_freeIds.Empty)
            {
                long id = _freeIds.dequeue();
                if (id == NO_RESULT)
                {
                    continue;
                }
                writeBuffer.putLong(id);
                if (writeBuffer.position() == writeBuffer.capacity())
                {
                    writeBuffer.flip();
                    _channel.writeAll(writeBuffer);
                    writeBuffer.clear();
                }
            }
            writeBuffer.flip();
            if (writeBuffer.hasRemaining())
            {
                _channel.writeAll(writeBuffer);
            }
            return(_channel.position());
        }