- C#언어로 강의를 진행하고, 다양한 멀티 스레딩 패턴과, CPU 구조 등등 정말 유용한 강의!
- 위키독스 : 프로세스와 스레드
- 널널한 개발자 : 프로세스와 스레드
- 쉬운코드 : 동기&비동기
- 에로로 : 비동기 프로그래밍 & 병렬 처리
- 예제로 배우는 C# 프로그래밍 : 멀티 쓰레딩
- jacking75 : 데이터 병렬처리 & 작업기반 비동기 프로그램 문법
- 모꾼 TV : Multi Thread 배우고 통찰력 높이기
dotnet new console
-
솔루션 파일만 제작했다 하더라도 인텔리 센스가 작동 안할 때가 있다.
-
그럴때는 폴더 구조가 루트 디렉토리에
.vscode
폴더 만들고, setting.json 파일을 만들어야 한다.ROOT ├── .vscode │ └── settings.json └── UdemyMultiThreading └── MultiThreading_Test ├── MultiThreading_Test.csproj ├── MultiThreading_Test.sln ├── README.md ├── doc ├── img ├── resources └── scripts ├── Lecture1_Program.cs ├── Lecture2_FactorialProgram.cs ├── Lecture3_HTTPProgram.cs ├── Lecture3_ImageProgram.cs └── main.cs
-
Preferences: Open Workspace Settings (JSON)
/* setting.json */ { "dotnet.defaultSolution": "TestConsole.sln" }
-
이번에는 "Failed create URI from './packs'; original string: './packs'." 발생
-
- VS Code에서 내장 터미널을 열고(Ctrl+
또는 Cmd+
on macOS), 프로젝트 디렉토리로 이동 - dotnet add package [패키지 이름] 명령어를 사용하여 NuGet 패키지를 프로젝트에 추가.
- 예를 들어, Newtonsoft.Json 패키지를 추가하려면 dotnet add package Newtonsoft.Json 명령을 사용
- VS Code에서 내장 터미널을 열고(Ctrl+
-
- VS Code NuGet 패키지를 검색
- NuGet Package Manager 확장 기능을 설치시 VS Code 내에서 직접 NuGet 패키지를 검색하고 설치할 수 있음
- 커맨드 팔레트(Ctrl+Shift+P 또는 Cmd+Shift+P on macOS)를 열고 해당 확장 기능의 명령을 사용하여 패키지를 관리할 수 있습니다.
-
- NuGet 패키지를 프로젝트에 추가한 후,
- 터미널에서
dotnet build
명령을 실행하여 프로젝트를 빌드
-
- dotnet run 명령을 실행하여 프로젝트를 실행할 수 있습니다.
cd MultiThreading_Test dotnet run
- dotnet run 명령을 실행하여 프로젝트를 실행할 수 있습니다.
-
- 빌드 바이너리 디렉토리에 리소스가 경로를 못찾아오는 문제가 있었다.
- csproj 리소스와 결과디렉토리를 명시한다 빌드시, 디렉토리 복사
<ItemGroup> <PackageReference Include="SixLabors.ImageSharp" Version="3.1.5" /> <!-- 여기서 부터 Content하고 include 하고 감싸준다. --> <Content Include="resources/*.*"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> <Content Include="out/*.*"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> </Content> </ItemGroup>
- launch.json도 수정하자
"configurations": [ { "name": "C#: Multi Thread Main Debug", "type": "dotnet", "request": "launch", "program": "${workspaceFolder}/bin/Debug/net8.0/MultiThreading_Test.dll", "projectPath": "${workspaceFolder}/MultiThreading_Test.csproj", "args": [], "cwd": "${workspaceFolder}", "stopAtEntry": false, "console": "internalConsole", } ]
- csproj 리소스와 결과디렉토리를 명시한다 빌드시, 디렉토리 복사
- 빌드 바이너리 디렉토리에 리소스가 경로를 못찾아오는 문제가 있었다.
- M1에서 Apache JMeter 설치
arch -x86_64 brew install jmeter
- 환경 변수 설정
/*** ~/.zshrc ***/ export PATH="/opt/homebrew/bin/jmeter/:$PATH"
- 터미널에서
> jmeter
수행
-
- System.Drawing.Common은 Apple M1에서 지원하지 않아, SixLabors.ImageSharp을 사용
-
- 강좌 내에서 사용하는 Java FX 대신 사용해 봄직한 데스크톱 제작 툴을 사용하려고 설치함
sudo dotnet workload install maui
dotnet workload uninstall maui