`stream.addSink(new PrintSinkFunction<>())` 和 `stream.print()` 在 Flink 中是否相同

Are `stream.addSink(new PrintSinkFunction<>())` and `stream.print()` the same in Flink

stream.addSink(new PrintSinkFunction<>())stream.print()我都看过了,想知道它们之间有什么区别吗

基于https://github.com/apache/flink/blob/b2a342c6a6ef154ed3c1a44826ce2be14e538386/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/datastream/DataStream.java#L972-L973,除了.name("Print to Std. Out")部分,其他基本相同,对吧?

是的,这是一样的 stream.print() 只是 stream.addSink(new PrintSinkFunction<>()).name("Print to Std. Out"); 的快捷方式:

@PublicEvolving
public DataStreamSink<T> print() {
    PrintSinkFunction<T> printFunction = new PrintSinkFunction<>();
    return addSink(printFunction).name("Print to Std. Out");
}