Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Select a concurrency design pattern to simplify code that executes asynchronously #13

Closed
ininmm opened this issue Dec 8, 2020 · 6 comments
Labels
good first issue Good for newcomers

Comments

@ininmm
Copy link
Collaborator

ininmm commented Dec 8, 2020

In GitLab by @in_in_mm on Nov 11, 2020, 13:42

Related to #1 !15

目前已有夥伴提出想要調整專案內非同步及多執行緒的開發方式,可能的技術選型如下 :

  • Callback with Thread Pool (Executors)
  • RxJava 2 or RxJava 3
  • Kotlin Coroutines

因為對專案影響較大,在這邊開個 issue 收集大家的意見,之後再選擇一個大多數人都接受的方式下去實作。

請各位在下面幫我用 Emoji 投票選擇想要的技術選型(單選):

⚾ basebase for Callback

🏀 baseketball for RxJava

⚽ soccer for Coroutines

@ininmm ininmm added the good first issue Good for newcomers label Dec 8, 2020
@ininmm
Copy link
Collaborator Author

ininmm commented Dec 8, 2020

In GitLab by @Aidan79225 on Nov 11, 2020, 15:57

三種在工作上或side project都用過

以下為個人感想

  • code乾淨程度: Coroutines > RxJava > Callback
  • lib大小: RxJava > Coroutines > Callback
  • performance: Callback > Coroutines > RxJava
  • 上手門檻: RxJava > Coroutines > Callback

@ininmm
Copy link
Collaborator Author

ininmm commented Dec 8, 2020

In GitLab by @in_in_mm on Nov 13, 2020, 12:39

除了技術選型之外,我覺得可以先動一些地方。

例如說重構使用執行緒的地方,拉出一個獨立的模塊定義好各種 threal pool,先做一個抽換舊有的 thread 的調整

@ininmm
Copy link
Collaborator Author

ininmm commented Dec 8, 2020

In GitLab by @in_in_mm on Nov 14, 2020, 00:06

changed title from {-專案非同步及多執行緒處理-} to {+Select a concurrency design pattern to simplify code that executes asynchronously+}

@ininmm
Copy link
Collaborator Author

ininmm commented Dec 8, 2020

In GitLab by @in_in_mm on Nov 25, 2020, 13:57

恩看起來大家好像都想要做 Kotlin Coroutines

那我覺得這邊討論可以先告一個段落,等到我們的專案差不多轉成 kotlin 後各位有空就可以接過去處理了

@ininmm
Copy link
Collaborator Author

ininmm commented Dec 8, 2020

In GitLab by @Aidan79225 on Dec 2, 2020, 00:06

marked this issue as related to #30

@ininmm
Copy link
Collaborator Author

ininmm commented Apr 5, 2021

目前已開始使用 Kotlin Coroutines

@ininmm ininmm closed this as completed Apr 5, 2021
@ininmm ininmm mentioned this issue Dec 8, 2020
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

1 participant