package com.ygy.test
import org.apache.flink.streaming.api.functions.source.SourceFunction
import org.apache.flink.streaming.api.scala._
object TestFlink04 {
def main(args: Array[String]): Unit = {
//环境
val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
//获取
val value: DataStream[String] = env.addSource(new MySource)
//输出
value.print()
//执行
env.execute("mysource test")
}
//继承SourceFunction 实现run cancel方法
class MySource extends SourceFunction[String]{
//变量
var flag : Boolean = true
override def run(sourceContext: SourceFunction.SourceContext[String]): Unit = {
var i=0
while (flag){
i=i+1
//输出
sourceContext.collect("str"+i.toString)
Thread.sleep(50)
}
}
//false
override def cancel(): Unit = {
flag=false
}
}
}
Flink自定义Source
最新推荐文章于 2023-12-30 13:49:30 发布
2068

被折叠的 条评论
为什么被折叠?



