public final class FileBasedStateOutputStream extends CheckpointStreamFactory.CheckpointStateOutputStream
CheckpointStreamFactory.CheckpointStateOutputStream
that writes into a specified file and
returns a FileStateHandle
upon closing.
Unlike the FsCheckpointStreamFactory.FsCheckpointStateOutputStream
,
this stream does not have a threshold below which it returns a memory byte stream handle,
and does not create random files, but writes to a specified file.
构造器和说明 |
---|
FileBasedStateOutputStream(org.apache.flink.core.fs.FileSystem fileSystem,
org.apache.flink.core.fs.Path path) |
限定符和类型 | 方法和说明 |
---|---|
void |
close()
This method should close the stream, if has not been closed before.
|
FileStateHandle |
closeAndGetHandle()
Closes the stream and gets a state handle that can create an input stream
producing the data written to this stream.
|
void |
flush() |
long |
getPos() |
boolean |
isClosed() |
void |
sync() |
void |
write(byte[] b,
int off,
int len) |
void |
write(int b) |
write
public FileBasedStateOutputStream(org.apache.flink.core.fs.FileSystem fileSystem, org.apache.flink.core.fs.Path path) throws IOException
IOException
public final void write(int b) throws IOException
write
在类中 OutputStream
IOException
public final void write(@Nonnull byte[] b, int off, int len) throws IOException
write
在类中 OutputStream
IOException
public long getPos() throws IOException
getPos
在类中 org.apache.flink.core.fs.FSDataOutputStream
IOException
public void flush() throws IOException
flush
在接口中 Flushable
flush
在类中 org.apache.flink.core.fs.FSDataOutputStream
IOException
public void sync() throws IOException
sync
在类中 org.apache.flink.core.fs.FSDataOutputStream
IOException
public boolean isClosed()
public void close()
The above implies that this method is intended to be the "unsuccessful close",
such as when cancelling the stream writing, or when an exception occurs.
Closing the stream for the successful case must go through CheckpointStreamFactory.CheckpointStateOutputStream.closeAndGetHandle()
.
close
在接口中 Closeable
close
在接口中 AutoCloseable
close
在类中 CheckpointStreamFactory.CheckpointStateOutputStream
@Nullable public FileStateHandle closeAndGetHandle() throws IOException
This closing must be called (also when the caller is not interested in the handle)
to successfully close the stream and retain the produced resource. In contrast,
the CheckpointStreamFactory.CheckpointStateOutputStream.close()
method removes the target resource when called.
closeAndGetHandle
在类中 CheckpointStreamFactory.CheckpointStateOutputStream
IOException
- Thrown, if the stream cannot be closed.Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.