동시 상호작용

  
코루틴을 사용하여 작업을 기본 스레드 외부로 이동하고 ListenableFuture를 활용합니다.
최근 업데이트 안정화 버전 출시 후보 버전 베타 버전 알파 버전
2024년 6월 12일 1.2.0 - - -

종속 항목 선언

Futures의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

Groovy

dependencies {
    implementation "androidx.concurrent:concurrent-futures:1.2.0"

    // Kotlin
    implementation "androidx.concurrent:concurrent-futures-ktx:1.2.0"
}

Kotlin

dependencies {
    implementation("androidx.concurrent:concurrent-futures:1.2.0")

    // Kotlin
    implementation("androidx.concurrent:concurrent-futures-ktx:1.2.0")
}

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.

새로운 문제 제출하기

자세한 내용은 Issue Tracker 문서를 참고하세요.

버전 1.2

버전 1.2.0

2024년 6월 12일

androidx.concurrent:concurrent-futures:1.2.0androidx.concurrent:concurrent-futures-ktx:1.2.0이 출시되었습니다. 버전 1.2.0에는 이 커밋이 포함되어 있습니다.

1.1.0 이후 중요 변경사항

버전 1.2.0-rc01

2024년 5월 29일

androidx.concurrent:concurrent-futures:1.2.0-rc01androidx.concurrent:concurrent-futures-ktx:1.2.0-rc01이 출시되었습니다. 버전 1.2.0-rc01에는 이 커밋이 포함되어 있습니다.

버전 1.2.0-beta01

2024년 5월 14일

androidx.concurrent:concurrent-futures:1.2.0-beta01androidx.concurrent:concurrent-futures-ktx:1.2.0-beta01이 출시되었습니다. 버전 1.2.0-beta01에는 이 커밋이 포함되어 있습니다.

버전 1.2.0-alpha03

2024년 3월 20일

androidx.concurrent:concurrent-futures:1.2.0-alpha03androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha03이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.

버그 수정

  • SuspendToFutureAdapter 작업에서 예외가 발생할 때 오류 처리에 발생하던 버그를 수정했습니다. (b/327629504)

버전 1.2.0-alpha02

2023년 8월 9일

androidx.concurrent:concurrent-futures:1.2.0-alpha02androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha02이 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • suspend-ListenableFuture 브리지를 작성하기 위한 SuspendToFutureAdapter를 추가했습니다. (Ia8a66)

버전 1.2.0-alpha01

2023년 2월 22일

androidx.concurrent:concurrent-futures:1.2.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha01이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.

API 변경사항

  • 이제 ResolvableFuture의 메서드에 적절한 null 허용 여부 주석이 있습니다. (I2339f, b/236474470)

버전 1.1.0

버전 1.1.0

2020년 8월 19일

androidx.concurrent:concurrent-futures:1.1.0androidx.concurrent:concurrent-futures-ktx:1.1.0 버전은 1.1.0-rc01 이후 변경사항 없이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.

1.0.0 이후 주요 변경사항

  • 1.1.0에서 도입된 Kotlin 확장 프로그램은 ListenableFuture와 Kotlin 코루틴 간의 변환을 지원하고 이제 androidx.concurrent:concurrent-futures-ktx:1.1.0에서 사용할 수 있습니다. 이 아티팩트는 전체 Guava 라이브러리와 달리 com.google.guava:listenablefuture와 함께 사용하도록 만들어진 것으로, ListenableFuture만 포함된 경량의 Guava 대체 항목입니다. 전체 Guava 라이브러리 사용자의 경우 대신 kotlinx.coroutines.kotlinx-coroutines-guava에서 공식 ListenableFuture 확장 프로그램을 사용해야 합니다.

버전 1.1.0-rc01

2020년 7월 22일

androidx.concurrent:concurrent-futures:1.1.0-rc01androidx.concurrent:concurrent-futures-ktx:1.1.0-rc01 버전은 1.1.0-beta01 이후 변경사항 없이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.

버전 1.1.0-beta01

2020년 6월 24일

androidx.concurrent:concurrent-futures:1.1.0-beta01androidx.concurrent:concurrent-futures-ktx:1.1.0-beta01 버전은 1.1.0-alpha01 이후 변경사항 없이 출시되었습니다. 버전 1.1.0-beta01에 포함된 커밋을 확인하세요.

버전 1.1.0-alpha01

2019년 12월 18일

androidx.concurrent:concurrent-futures:1.1.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.1.0-alpha01가 출시되었습니다. 버전 1.1.0-alpha01에 포함된 커밋을 확인하세요. androidx.concurrent:concurrent-futures-ktx의 첫 번째 버전입니다.

새로운 기능

  • 이제 ListenableFuture 코루틴과 Kotlin 코루틴 간의 변환을 지원하는 Kotlin 확장 프로그램이 concurrent-futures-ktx에서 제공됩니다. 이 아티팩트는 전체 Guava 라이브러리와 달리 com.google.guava:listenablefuture와 함께 사용하도록 만들어진 것으로, ListenableFuture만 포함된 경량의 Guava 대체 항목입니다. 전체 Guava 라이브러리 사용자의 경우 대신 kotlinx.coroutines.kotlinx-coroutines-guava에서 공식 ListenableFuture 확장 프로그램을 사용해야 합니다.

API 변경사항

  • ListenableFuture 코루틴을 Kotlin 코루틴으로 변환하는 ListenableFuture.await() 중지 확장 프로그램이 추가되었습니다.

버전 1.0.0

버전 1.0.0

2019년 10월 9일

androidx.concurrent:concurrent-futures:1.0.0가 출시되었습니다. 버전 1.0.0에는 이러한 커밋이 포함되어 있습니다.

1.0.0의 중요 기능

androidx.concurrent:concurrent-futures:1.0.0에서는 콜백 기반 코드를 래핑하고 ListenableFuture의 인스턴스를 반환할 수 있는 미니멀리스트적 유틸리티인 CallbackToFutureAdapter 클래스를 제공합니다. 이 클래스는 맞춤 콜백보다 더 정교한 방식으로 자바 API에서 비동기 작업을 노출하려는 라이브러리에 유용하지만 라이브러리 크기 문제로 인해 전체 guava 또는 rx 자바의 종속성을 사용하기에는 멀티스레딩의 복잡한 작업을 충분히 처리하지 못합니다.

버전 1.0.0-rc01

2019년 8월 7일

androidx.concurrent:concurrent-futures:1.0.0-rc01 버전은 1.0.0-beta01에서 변경사항 없이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

Concurrent-ListenableFuture 버전 1.0.0-beta01

2019년 5월 30일

androidx.concurrent:concurrent-listenablefuture:1.0.0-beta01androidx.concurrent:concurrent-listenablefuture-callback:1.0.0-beta01가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

이 라이브러리는 Guava의 ListenableFuture 인터페이스와 동등한 독립형 및 콜백 변환을 위한 어댑터를 제공합니다.

유사한 어댑터를 제공하며 com.google.guava:listenablefuture 아티팩트를 포함한 이전에 출시된 androidx.concurrent:concurrent-futures 아티팩트는 엄격한 종속성 확인 매칭이 있는 도구 모음(예: Android Gradle 플러그인 3.4.0)을 사용하는 개발자에게 문제가 될 수 있습니다. 전체 Guava 라이브러리를 사용하지 않는 개발자는 androidx.concurrent:concurrent-listenablefuture-callback으로 전환하는 것이 좋습니다.

버전 1.0.0-beta01

2019년 5월 7일

androidx.concurrent:concurrent-futures:1.0.0-beta01이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

API 변경사항

  • ResolvableFutureAbstractResolvableFuture는 더 안전한 API를 제공하는 CallbackToFutureAdapter를 선호하여 공개 API에서 숨겨졌습니다.

버전 1.0.0-alpha03

2018년 12월 17일

androidx.concurrent:concurrent-futures 1.0.0-alpha03이 출시되었습니다.

새로운 기능

  • CallbackToFutureAdapter가 도입되었습니다. 이것은 콜백 기반 API를 ListenableFuture로 래핑하는 새롭고 더 안전한 API입니다. ResolvableFuture보다 이 API를 사용하는 것 더 좋습니다.