169 похожих чатов

Бля, чё за нахер? вот так работает (#1 мой вариант): open System.Threading.Tasks let

fTask (job: unit -> Task<'T>) = task {
if false then
failwith "error"

let! result = job()
return result
}

let fAsync (job: unit -> Async<'T>) = async {
if false then
return failwith "error"
let! result = job()
return result
}

// resultAsync
fun() -> async.Return("test")
|> fAsync
|> Async.RunSynchronously
|> printfn "%A"

// resultTask
fun() -> Task.FromResult("123")
|> fTask
|> Async.AwaitTask
|> Async.RunSynchronously
|> printfn "%A"


а вот так не работет (#2 вариант Rustam)
open System.Threading.Tasks

let fTask (job: unit -> Task<'T>) = task {
if false then
return failwith "error"

let! result = job()
return result
}

let fAsync (job: unit -> Async<'T>) = async {
if false then
return failwith "error"
let! result = job()
return result
}

let result = (fAsync (fun() -> async.Return("test"))) |> Async.RunSynchronously
printfn $"{result}"

let result = (fTask (fun() -> Task.FromResult("123"))).GetAwaiter().GetResult()
printfn $"{result}"

8 ответов

46 просмотров

Так, в первом варианте не fun() -> (async.Return("test") |> ...) ли?

dd- Автор вопроса
TOV_MULTIMASSO
Так, в первом варианте не fun() -> (async.Return("...

эта часть в обоих варинтах работает не работает вот эта часть у Rustam: let result = (fTask (fun() -> Task.FromResult("123"))).GetAwaiter().GetResult()

dd
эта часть в обоих варинтах работает не работает во...

fun() -> Task.FromResult("123") |> fTask Это точно одно и то же с fTask (fun() -> Task.FromResult("123")) ?

TOV_MULTIMASSO
fun() -> Task.FromResult("123") |> fTask Это точн...

Нет, и это влияет на инференс

dd- Автор вопроса
dd- Автор вопроса

я просто return в ифе забыл :) #1 https://sharplab.io/#v2:DYLgZgzgNALiBOBXAdlAJiA1AHwPYAcBTZAAgGUBPCGQgWwDoAVAC3kIEM0BLZAcyfYQA1hACwAKAnBCMEiTCNBQkgAoAVrgBGIEii6yAtAD4Si4QB4A5IyMBKEgF4SMJSQDeEuV65h57YBCEzszEnl7hJAD0kWwwiPCkYOxcwADu+swkAESE8PC48FlhEXJJKekwmTl5BVlRkSSA8iAkgPwggAIggHwggIIggEIgHSSx8aSA7CCADCCAjCCA0iCA3CAkILYSxXLSMACEA4QQiMCyThqaKgviEYMJG1s7EgC+i+IrpQCCEBTIAMaq+zp6hiZPL69WGz2JyCf7uJYkHx+AJBSqhY4lOSnRLJNIZbK5fKFCErdZsC67Ej7Q4Q5HnbYwa63aLknZ/N4SMAoQ4kYwkUFvegAJRkQxUWRo1CyR2wJjA9NeElFJAl3JQlDerFwyFwiAgwAoUpM+HgPBgYFIWQApA8ipJxDT8RSzEIJComcgWWybfQAGL5Wg8gn8gCMACYAMzCkVim1amXPTkPVLJGBh8TS2Vc+X/JUqtUa8M6vUG7ImrJAA=== #2 https://sharplab.io/#v2:DYLgZgzgNALiBOBXAdlAJiA1AHwPYAcBTZAAgGUBPCGQgWwDoAVAC3kIEM0BLZAcyfYQA1hACwAKAnBCMEiTCNBQkgAoAVrgBGIEii6yAtAD4Si4QB4A5IyMBKEgF4SMJSQDeEuV65h57YBCEzszEnl7hJAD0kWwwiPCkYOxcwADu+swkAESE8PC48FlhEXJJKekwmTl5BUWS4hHSMACEJGwQiMCyThqaKrbFcrHxpO2dMBIAvhJSMqUAghAUyADGqr06eoYmi8srVjb2ToJ77oMkPn4BQZWhDSVDMiN+5RnZufmF502tY12OJF6/XOwwSbUIHS6Uxm4iaj0hMF2qwBKjASLWqJQ/RIxhIJ1W9AASk8EiosjRqFlbNSSNgdksCYSUJRVqxcMhcIgIMAKBJ8PAeDAwKQACRZNx/REMlaTOqzWTghFmZROVHK1RgLH2XHK+gAMXytGJCLJAEYAEwAZip1PoAHEZPNUskaPB+vaZMbxsDxPzBcKSGKJRDxsrZUA

dd
я просто return в ифе забыл :) #1 https://sharplab...

Так с ретурн и без - разные кейсы

dd- Автор вопроса
Vlæd Zá
Так с ретурн и без - разные кейсы

не мой кейс (я бы без return делал - собственно, потому и проглядел его)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта