본문 바로가기

Dead Code/DEPRECATED-KOTLIN

[코틀린코드연습장] 쓰레드(3) ... AsyncTask



음.. 이건 또 뭔가. 




class MainActivity : AppCompatActivity() {



override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

button.setOnClickListener {
var time = System.currentTimeMillis()
textView.text = "button Click : ${time}"
}

var sync = AsyncTaskClass()
sync.execute(10, 20)

}

inner class AsyncTaskClass : AsyncTask<Int, Long, String>() {
override fun onPreExecute() {
super.onPreExecute()
textView2.text = "AsyncTask 가동"
}

override fun doInBackground(vararg params: Int?): String {
var a1 = params[0]!!
var a2 = params[1]!!

for (idx in 0..9) {
SystemClock.sleep(1000)
a1++
a2++

Log.d("text1", "${idx} :: ${a1} :: ${a2}")

var time = System.currentTimeMillis()
publishProgress(time)
}

return "수행이 완료되었습니다."
}

override fun onProgressUpdate(vararg values: Long?) {
super.onProgressUpdate(*values)

textView2.text = "Async : ${values[0]}"

}

override fun onPostExecute(result: String?) {
super.onPostExecute(result)

textView2.text = result

}
}
}