چون وقتی که شما async رافراخوانی کنید و برای آن policy تعریف نکنید با فراخوانی متد get و wait در future عملیات در thread صورت می گیرد و حتی توابعی موجود در background thread اجرای آن به فراخوانی متد get وابسته هستش .به همین خاطر در مواردی که future هیچ خروجی نداره می بایست نوع void را برای آن مشخص کنید.