Jak wrzucić np. funkcje w osobny process? (sama sobie go tworzy)

0

Witam, chciałbym zrobić tak, że pewna funkcja lub task(?) po wywołaniu tworzy sobie swój process .exe i w nim się wykonuje.
Gdy wywołam te funkcję 3 razy np

doStuff(1)
doStuff(2)
doStuff(3)

to utworzą się 3 processy które będą działać na innych danych wejściowych i nie będzie problemu z tym, aby działały w tym samym czasie ofc.


public static string doStuff(int input)
{
  doingStuff;
  return output;
}

public static void Main()
{
  Console.WriteLine(doStuff(1));
  Console.WriteLine(doStuff(2));
  Console.WriteLine(doStuff(3));
}

1

Nie możesz. Albo zrobisz osobną apkę do tego i odpalisz jako osobny proces albo wsadzisz to do osobnego wątku. Nie można w C# forkować procesów: https://stackoverflow.com/questions/12952518/can-i-run-c-sharp-code-in-a-separate-process-without-crafting-a-console-applicat

2

To się fachowo nazywa wielowątkowość, zatem c# threading w Google.

i nie będzie problemu z tym, aby działały w tym samym czasie ofc.

To już zależy od tego, jak tę swoją aplikację napiszesz ;-)
Wielowątkowość nie jest łatwą sprawą.

0
grzesiek51114 napisał(a):

Nie możesz. Albo zrobisz osobną apkę do tego i odpalisz jako osobny proces albo wsadzisz to do osobnego wątku. Nie można w C# forkować procesów: https://stackoverflow.com/questions/12952518/can-i-run-c-sharp-code-in-a-separate-process-without-crafting-a-console-applicat

Czyli robię console appke która zawiera te funkcje i wrzucam dane przez string[] args, a wyciągam przez jakiś stream lub plik?

1

@WeiXiao: a nie lepiej zrobić to w osobnych wątkach? Jeżeli to ma działać w tym samym czasie to zastosuj wątki. Po co przenosić metody do osobnych apek i odpalać jako osobne procesy kiedy możesz odpalać to samo wsadzając metody do wątków? Szkoda roboty.

1

Ewentualnie, jeżeli potrzeba jakiejś szczególnej separacji można uruchomić kod w osobnym AppDomain.

0

Witam,

Zobacz czy może instancja serwera z https://www.quartz-scheduler.net/ spełni twoje oczekiwania

Pozdrawiam,

mr-owl

0 użytkowników online, w tym zalogowanych: 0, gości: 0