일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- sqld
- 알고리즘
- 주석
- 파이썬
- 오픽
- c++
- clean code
- 오픽 초보
- 클린 코드
- 게임서버개발
- SW개발자를 위한 성능좋은 SQL
- SQLD 이론
- 자청
- 클린코드
- MFC
- N-Queen
- BFS
- DP
- SQLD이론
- Python
- Javascript
- 폴링vs이벤트
- git
- Backtracking
- 역행자
- beautifulsoup
- 서버아키텍처
- 서버최적화
- 백준
- sqld요약
- Today
- Total
가취공부하자

이벤트는 스레드 간 동기화를 위한 커널 오브젝트로,특히 스레드가 특정 조건이 충족될 때까지 대기해야 하는 상황에서 유용합니다. 아래 내용은 이벤트의 개념과 활용에 대한 정리입니다. (c++ 게임서버 강의를 듣고 정리하였습니.) 기본 개념이벤트: 커널에서 관리하는 동기화 객체로, Signal(초록불)/Non-Signal(빨간불) 상태를 가짐목적: 스레드 간 통신 및 동기화, 특히 무의미한 대기 상태를 방지하기 위해 사용 Event 사용 예제 코드// Producer 스레드: 데이터 생성 후 이벤트를 Signal 상태로 변경void Producer() { while(true) { { unique_lock lock(m); q.push(100); ..

자기소개 : 많은 시간을 들이지 말고, 긴장을 푸는 용도로 준비! 유형1 : 현재시제를 활용한 장소, 종류 묘사 - 집의 형태, 은행의 모습, 선호하는 음악 장르 or 가수 - 카페의 모습 - 기본, 쉬움, 배점 ↓ 유형2 : 현재시제를 활용한 활동, 루틴 단계 묘사 - 배점 ↓ 유형3: 과거시제를 활용한 최근 경험 또는 최초 경험 설명 - Tip) 답변 초반에 "육하원칙"에 해당하는 정보를 다 줘라. 디테일은 그 뒤에 - 최초문제로 [시간에 따른 나의 취향 변화]까지 물어볼 수 있다. 유형4 : 과거시제를 활용한 인상적인 경험 설명 - 유형3 보다 배점 ↑ - 누가 들어도 기억에 남는 경험을 말해야함. 유형5 : 상대에게 3~4가지 질문을 하는 롤플레이 유형 (배점 ↓, 5-6단계 선택시 나오지 않음..

목표 : 2-3주 내에 IH (Intermediate high) 획득하기 오픽 정보응시료 : 84000원취소기간 : 시험일 2일 전 23:59:59 공부 방법[1일차] 오픽 시험 문제 유형 파악 [2-3일 차] 이틀 동안 AL시리즈 정주행ㄴ 어떻게 첨삭이 되는지, 어떻게 오픽에 답변해야 하는지 포커스 (스크립트가 아님!)ㄴ 핵심 문장과 결론 말하기 방식 파악ㄴ 필러 공부, 부사공부 [3-5일차] 예상 질문에 답변예상ㄴ 한국어로 답변 예상하고, 영어로 말하는 연습 (무작정 말하도록 해야 함)ㄴ 정말 생각 안 나는 단어만 한국어 옆에 표기ㄴ 부단용 오픽 요약본 참고 (주제별 유용한 표현이 잘 정리되어 있음)https://m.blog.naver.com/noceiling12345/223374032590 [6-7..

c++ 애플리케이션에서 사용하는 메모리는 크게 스택과 프리스토어( free store) 로 나뉜다. 스택스택은 함수 호출과 관련된 지역 변수 및 함수를 저장하는 영역이다. 매우 빠르며, LIFO(Last In, First Out) 방식으로 작동한다.스택에 할당된 변수는 프로그래머가 직접 할당 해제할 필요없이 자동으로 처리된다. 프리스토어일반적으로 힙(Heap)이라고도 불리며, 동적 메모리 할당에 사용된다. 함수가 끝난 후에도 그 안에서 사용하던 변수를 계속 유지하고 싶다면 프리스토어에 저장한다.프리스토에 할당된 메모리 공간은 개발자가 직접 할당과 해제를 관리한다. 포인터메모리 공간을 적당히 할당하기만 하면, 어떤 값이라도 프리스토어 저장할수 있다.메모리 공간을 할당할때는 포인터를 선언한다.int* myI..

Concurrency와 Parallelism은 둘 다 여러 작업을 동시에 수행하는 것을 다루는 개념이지만, 의미에서의 차이가 있다.Concurrency(동시성)논리적으로 동시에 진행되는것이다.병렬로 진행되는 것처럼 보이지만, 실제로는 짧은 시간 동안 서로 번갈아 가며 실행된다.A작업 -> B작업 -> A작업이 실제론 순서로대로 실행되지만, 동시에 실행되는 것처럼 보이는 것.싱글코어,멀티코어에서 가능 Parallelism(병렬성)물리적으로 동시에 진행되는 것이다.실제로 다수의 작업이 동시에 실행된다.멀티코어에서만 가능 동기화 문제는 Concurrent 한 task 사이에서 발생한다.동기화 문제는 여러 프로세스에서 공유된 자원에 접근하려 할 때 발생한다.예시) A 작업이 공유자원 읽음 -> B작업 공유자원 ..

RUST란?모질라 연구소에서 개발된 시스템 프로그래밍 언어로, 안전하고 효율적인 병렬 프로그래밍을 지원한다.c나 c++ 같은 저수준 언어의 성능을 유지하며, 메모리 안정성과 스레드 안정성을 보장한다. RUST를 사용하는 이유?c/c++ 같은 저수준의 언어는 Shared Mutable States로 인해 안전성을 보장하기 어렵다.Shared Mutable States 란 간단하게 Shared는 공유하는 것 (두 곳에서 하나의 메모리를 보는 것), Mutable (읽고 쓰는 것)이다.즉, Shared Mutable States로 인해 undefined behaviors 가 많다. undefined behaviors에 대해 c/c++ 에선 warning 알림을 띄워주지만 컴파일 성공한다. Rust에선 erro..

rand와 srand는 난수를 생성하는 데 사용되는 함수이다. 1. rand역할 : 의사 난수 (실제로는 예측 가능한 수열이지만, 일정한 패턴 없이 생성되는 것처럼 보이는 수열)를 반환한다.사용방법 : "#incldue "을 사용해도 된다.#include int random= rand(); 출력범위 : 0~ 32767주의점 : 프로그램이 실행될 때마다 동일한 난수 시퀀스를 생성 2. srand역할 : rand가 생성하는 난수 시퀀스를 설정하는 시드 값을 설정한다. srand를 사용하지 않으면 rand는 항상 동일한 시퀀스를 생성한다. 사용방법 #include int main(){ srand(time(0)); for (int i = 0; i

세 단계를 거쳐서 아이콘 로고 만들고 있습니다. 1. Canva에서 로고 디자인하기https://www.canva.com/ 2. 무료 배경 지우기https://www.adobe.com/kr/express/feature/image/remove-background 무료 배경 지우기: 온라인 배경 지우기 | Adobe Express이미지에서 자동으로 배경을 지우세요. Adobe Express 온라인 배경 지우개로 새로운 투명 배경 이미지를 다운로드하고, 배경을 바꾸고, 아름다운 그래픽을 만드세요.www.adobe.com 3. png to ico 변환하기https://convertio.co/kr/png-ico/ PNG ICO 변환 (온라인 무료) — Convertiopng 파일(들) 업로드 컴퓨터, Google..

https://d2.naver.com/helloworld/7976382 소프트웨어 개발 프로세스를 간략히 설명한 후, 각 단계에서 ChatGPT가 구체적으로 어떤 도움을 줄 수 있는지 살펴보겠습니다.소프트웨어 개발 프로세스1. 요구사항 분석 : 프로젝트의 목표, 기능을 명확히 이해2. 설계: 전체적인 구조를 결정3. 구현 : 설계를 통해 정의된 구조와 명세를 기반으로 소스 코드 작성4. 테스트 : 소프트웨어가 요구 사항에 부합하는지 확인5. 배포 : 소프트웨어를 고객에게 전달6. 유지보수 : 소프트웨어 사용 중 발생하는 문제 해결, 변경된 요구 사항이나 기술 발전에 따라 개선 먼저 "구현"단계에서 ChatGPT를 어떻게 활용할 수 있는지 알아보겠습니다.구현 단계에서의 활용 방안"구현" 프로세스1. 코딩..

WKT = Well-Known Text GeometryWKT는 지도, 공간 객체의 공간 참조 시스템(Spatial Reference System) 그리고 공간 참조 시스템 간의 변환을 표현하기 위한 마크업 언어로 간단하게 공간을 표현하는 대표 언어이다. WKT는 point, polygon, multipolygon 등이 있다. (4개의 변수로 18개의 다른 geomtery 타입을 나타낼 수 있다) 왜 우리가 WKT를 사용하는가?1. Standard : 표준화되어 있어 상호 운영성이 편하다.2. Readability : WKT의 문법은 상대적으로 이해하고 읽기 쉽다3. Restful API를 호출할 때, WKT 문자열이 다른 형식보다 더 효율적이다. WKT는 많은 예제들에서 가독성과 효율성 측면에서 다..