반응형 전체 글100 Putty 테마, 폰트 변경하기 요새 워낙 좋은 ssh 터미널 프로그램들이 많아져서 putty를 쓸 일이 없었는데 어쩔 수 없이 프리웨어인 putty를 쓸 일이 종종 생긴다 (라이선스 문제라던가) 오랜만에 putty를 설치해서 실행하면 마치 윈도우 cmd를 열어버린 것 같은 칙칙함에 일할 맛이 급격히 사라지곤 하는데 폰트랑 색상을 조금 바꿔서 칙칙함을 한 번 덜어보자 1. 폰트 변경하기 Window - Appearance에서 폰트와 행간을 변경할 수 있다 폰트: Consolas, 12-point 행간: 3 cf. IBM Plex Mono 폰트 사용하기 프로그래밍 코드로 많이 사용하는 IBM Plex Mono 폰트를 다운받아서 사용했다 IBM Plex Mono, 10 point https://fonts.google.com/specimen.. 2021. 8. 5. 리눅스 terminator 세팅하기 리눅스에서 기본적으로 gnome terminal을 제공하고 있지만 다소 불편한 점이 있다 (창 분할, 화면 간 이동 지원 X). 그래서 오늘은 터미네이터라는 프로그램을 설치해보고 테마 변경까지 해보았다. 설치하기 $ sudo apt-get install terminator 테마 변경하기 $ vim ~/.config/terminator/config # Enter below configuration [global_config] tab_position = bottom handle_size = 0 focus = system [keybindings] [profiles] [[default]] scrollbar_position = hidden use_system_font = False background_darkne.. 2021. 8. 5. Python client - Unity Server I. Data format I-1. Python using struct 파이썬의 struct 모듈을 이용하면 정수, 문자열 등을 바이트 객체로 변환하거나 추출할 수 있다 pack, unpack, calcsize을 제공 struct - Interpret bytes as packed binary data - Python 3.9.6 documentation I-1. basic_packet_format.py BasicPacketFormat = '=' BasicPacketFormat += 'i' # Type Of Service (int; 4bytes) BasicPacketFormat += 'i' # Display ID (int; 4bytes) BasicPacketForm.. 2021. 8. 4. [c++] logger 클래스 만들기 #include #include #include #include #include #include using namespace std; enum class LOGLEVEL : int { FATAL, ERRORS, WARN, INFO, DEBUG }; static LOGLEVEL kLogLevel = LOGLEVEL::DEBUG; class LogPrefix { public: LogPrefix(LOGLEVEL loglevel_ = LOGLEVEL::DEBUG) { if(loglevel_ == LOGLEVEL::FATAL) { message = "[FATAL] "; } else if (loglevel_ == LOGLEVEL::ERRORS) { message = "[ERROR] "; } else if (logl.. 2021. 8. 4. [c++] timer 클래스 만들기 chrono 라이브러리를 이용해서 타이머 클래스를 만들어봅시다. #include #include #include #include typedef std::chrono::steady_clock sclock; //@brief Timer measure time diff between start() and stop() class Timer { public: virtual ~Timer() { } inline void start() { start_time = sclock::now(); } inline void stop() { end_time = sclock::now(); } inline double elapsed_milli() const { return std::chrono::duration_cast(end_time.. 2021. 8. 4. [c++] thread vs task (thread 와 async) thread와 task는 사용 목적과 추상화 정도가 다르다 thread는 원시적인 병렬처리 방법이고, thread를 사용해 task는 데이터를 동기화하는 방법이다 ⭐ 다시 말하면 데이터를 동기화 할 때는 굳이 개발자가 직접 thread를 생성하고, mutex를 이용하기 보다는 ⭐ c++에서 제공하는 task를 이용하는 것이 좋다 ⭐ 심지어 task를 이용할 때 thread를 생성할 수도 있고, 필요하면 생성하지 않고 동기화 할 수도 있다. thread는 말그대로 병렬처리를 위한 흐름을 생성하고 제어하기 위한 기본적인 함수를 제공한다 (join, detach 등) async와 같은 task는 promise-future 사이에 통신 흐름을 만든다 future에서 get 함수를 호출하여 promise와 동기화.. 2021. 8. 4. 이전 1 ··· 8 9 10 11 12 13 14 ··· 17 다음 반응형