요약한게 맞는지 확인해주실 수 있나요? 1. Pop은 현재 head를 따로 oldHead로 저장하고, 이것이 nullptr이 아니란 소리는 head가 존재한다는 뜻, 즉 1개 이상 스택에 값이 존재한다는 뜻임 2. 스택에 값이 1개 이상이면 oldHead는 nullptr이 아닐 것이고 pop을 한번 했을 때 oldHead에 head가 제대로 값이 들어갔다면 while문을 통과하면서 _head=oldHead->next; 가 원자적으로 실행되고, 아래쪽을 쭉 실행하다가 TryDelete 함수가 호출될 것임 2-1. 이때 만약 다른 Pop 쓰레 드들이 있다고 하면, 요놈들은 첫 Pop에서 _head가 oldHead->next로 바뀐것으로 인해 while문을 통과하지 못하므로 oldHead=_head가 실행되어 다시 while문이 불려져서 다음 원소를 상대로 pop을 진행함 -------------------- 이후는 TryDelete입니다 3. popCount가 1인 경우 : TryDelete가 실행되는 순간에도 popCount가 1이라면 아직은 Pop이 다른 쓰레드로 호출되지 않은 상태임. 3-1-1. pendingList를 읽어 삭제하려고 하는데, 이걸 읽었는데도 popCount가 아직 1이라면 Pop이 pendingList를 읽는 사이에 한번도 호출되지 않은 것이므로, 읽은 pendingList와 연결된 모든 노드를 이참에 삭제함 3-1-2. pendingList를 읽어 삭제하려고 하는데, 이걸 읽은 사이에 popCount가 증가하여 Pop이 다른 쓰레드에서 호출됐다는 걸 알았으니 읽어들인 pendingList를 다시 돌려놓는다. 3-2. pendingList도 다 삭제햇으니(돌려놨으니) 현재 노드를 삭제해주면 된다. 4. popCount가 1 초과인 경우 : TryDelete가 실행되는 순간에 popCount가 1을 넘어버렷다면, Pop이 다른 쓰레드에서 호출된 상태이므로 지금 당장 삭제하지 말고 삭제 예약만 해놓도록 한다.
안녕하십니까. 단말기와 스위치 및 라우터 장비에 연결시킬 때 강의에서는 선과 선 사이에 Fa0 Fa0/1 등등 선 끝과 끝사이에 이렇게 문구가 떠 있는데 제 PC 프로그램에서는 선만 표시되고 Fa0 및 Fa0/1 등 과 같은 문구가 표출이 안되는데 설정시키는 방법이 따로 있는건가요?
안녕하세요!! 선생님!!! ㅎㅎㅎ 장고 다운로드 로딩에 대하여 질문드리려 합니다!! (웹은 장고로만 개발하였습니다!!) 제가 구현한 내용은 단순히 모델을 불러와서 가공후 csv 파일로 response하는 view를 만들었습니다! 그래서 다운로드 버튼을 클릭하면 모델에 있는 데이터가 다운이 되는 그러한 로직입니다! 위와 같이 그냥 요청이 오면 모델을 불러와서 응답해주는?? 단순한 view입니다!ㅎ 다만 join이 많이 걸려있고 데이터가 좀 많다보니 시간이 상당히 많이 소요가 되는데요.. 문제가 다운로드버튼(위에 설명한 view와 연결한버튼)을 클릭 한 후 서버가 이를 처리를 하는데 서버자체가 이 작업을 끝날때 까지 먹통이되는? (제 3자가 웹에 접속했을때도 이 처리 때문에 위 처리가 끝날때 까지 아무런 요청을 할 수 없습니다) 문제가 발생합니다.. 제가 사용한 서버는 AWS EC2를 활용해 도커 compose파일로 nginx, gunicorn, mariadb를 연결해서 하나의 서비스로 만들어 배포하였습니다. 또한 로드밸런서 세팅도 되있습니다. 로컬에서 개발서버로 테스트 할때는 그냥 다운로드 버튼을 클릭을 해도 바로 종료가 가능하고 다른 브라우저로 접근해도 독립적으로 작동했는데 배포를 하니깐 위와 같은 현상이 발생하네요! 서버 성능의 문제인가 해서 인스턴스 유형도 좀더 올려보고 했지만 역시 위문제는 해결되지 않았습니다..ㅠ 그래서 뭔가 비동기적으로 처리하기위해서 celery를 이용해 볼까 했는데 잘못된 접근인건지 잘모르겠지만 피라미터를 어떻게 설정해야할지 몰라서 구현에 실패를 했습니다 ㅠ 서버의 문제라면 어떻게 접근을 해야하는지,,,,, 아니면 장고로 위와 같은 문제가 해결이 가능하다면 어떻게 코드를 작성하면 좋을지 부족한게 많다보니 며칠째 해결이 안되네요 ㅠㅠ 부족한 설명이지만 잘 부탁드리겠습니다!! 너무 감사합니다 선생님!!
유튜브 보다 인프런 강의까지 오게되었는데 듣다 궁금한 부분이 있어서 질문드립니다. %timeit을 해서 확인해보니 1) df["Name"][0] 2) df.loc[0."Name"] 3) df.loc[0]["Name"] - 유튜브에서는 1)과 2)를 비교해주셨고, - 인프런에서는 2)와 3)을 비교해주시면서 2)가 접근속도가 더 빠르다고 하였는데 1)이 가장 빠르다고 나와서 이에 대한 다른 이유?가 있는지 궁금해서 문의드립니다.
안녕하세요 인프런 강의를 듣기전 docker 공부를 하고있는 사람입니다. pip freeze > requirments.txt 하고 난 뒤 버전정보가 숫자가아닌 경로로 나오는 경우는 어찌해야 할지 모르겠네요 aiohttp @ file:///C:/ci/aiohttp_1602530153430/work
안녕하세요. 학습을 최근에 시작한 초급자입니다. 현재 장고 프로젝트 생성하여 생성된 폴더와 파일들이 무슨 기능을 하는 지에 대해 듣고 있습니다. 첫 번째 질문입니다. 제가 학습해나가는 것을 TIL로 깃헙에 올리고 싶은데, 코드는 똑같이 안쓰고 참고하여 다른 예시로 작성하면 된다면 이런 개념적인 부분들은 출처와 함께 그대로 써도 되는지 아니면 표현을 달리 해서 올리면 되는 지 알고 싶습니다. 이에 대해 먼저 묻고 작성하는 것이 예의인 것 같아 여쭤봅니다. 앞으로의 내용이 참 기대됩니다. 두 번째 질문입니다. 강의 시작 전에 SQL에 대해서 알고 있어야 하나요???
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 먼저, HTTP 웹 기본 지식 강의 완강했습니다. 좋은 강의 만들어주셔서 감사합니다. python django backend 개발자를 준비하고 있습니다. 질문은 `브라우저 캐시 갱신` 관련 질문입니다. 1. 브라우저는 기본적으로 서버에서 보내는 캐시를 다 저장하기 때문에, 캐시 무효화를 위해서 서버에서는 이와 관련된 header를 반드시 넣어야 한다고 이해하는 게 맞나요?? 2. 캐쉬 유효 시간이 지나서 갱신하려고 할 때, 수정된 내용이 없으면 header만 보낸다고 이해했습니다. 그러면 representation header 설명 강의 내용에서 'clinet와 serer 간에 주고 받는 resource의 data를 어떻게 표현할지 결정하는 header ' 라고 설명하셨는데, 클라이언트가 브라우저 캐시로 접근 유무를 결정하는 역할도 포함하는 건가요??? - header가 업데이트 되어 클라이언트가 브라우저 캐시를 조회 후, 업데이트 되는 원리를 제가 모르는 것 같습니다. 3. representation 관련 부분에서 Meta data 가 언급되는데 제가 이해하기로는 데이터 안에 담겨진 content data로 이해했습니다. 이게 맞나요?? 잘못되었다면 정확한 내용을 가진 출처를 알려주시면 공부해보겠습니다.
[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]
강의를 보고 똑같이 따라해도 None으로 출력이되어 구글링 하여 알아본 결과 잘 실행되어서 다른 분들도 보시라고 올립니다. http GET http://localhost:8080/login user_name==dave pw==1111 email_address==korea@naver.com 이런식으로 & 나 \ 를 작성하지 않고 하시면 제대로 작동합니다
simon님 안녕하세요 dictionary 실습 강의 중 궁금한 것이 생겼는데요, a['thing'] = a.pop('fruit') 을 실행하면 결과값이 'thing' : 'banana'가 되는 이유는 무엇인가요? print(a.pop('fruit')을 실행하면 'banana'가 출력되는데 a['thing'] = 'banana' 이니까 바나나의 자리에 thing 이 되어야 하는 거 아닌가요? thing이 바나나라는 value를 찾아 해당하는 key 값에 thing이 대입되는 과정이 궁금합니다!
https://docs.djangoproject.com/en/4.0/ref/forms/validation/ 공식문서에서는 error code 를 제공하는 것을 권장하고 있습니다. 이는 항상 지켜야 하는 걸까요? 선택의 기준이 있는지 궁금합니다. 강의 내에서는 안쓰는 것 같기도 하고요 감사합니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 실행을 누르면 결과가 출력되지 않고(간단한 print 조차도) conda run -no-capture-output --live-stream python 이런 메세지만 떳다가 사라집니다 . 갑자기 이런현상이 발생했는데 어떻게 해야하나요 ㅠㅠ
선생님, 사용자 패턴을 학습해서 목적지 예측을 하는 모델을 구현하고 싶습니다. 현재 아래와 같은 Sample Dataset을 만들었는데요 :) 데이터 전처리를 어떻게 해야할지 잘 모르겠습니다. 일단 day_of_week 피처는 원핫 인코딩으로 처리하려고 하고 출발 시간 피처(hour,min)은 log 값으로 scaling 하려고 합니다. 여기까지는 올바른 방향이 맞을까요? 또 시작 좌표(start_lat, start_lon)와 목적지 좌표(end_lat, end_lon) 를 어떻게 처리해야할까요? 일단 제가 생각한 것은 각각 좌표 지점을 군집화하여 원핫 인코딩으로 바꾸는 것을 생각했습니다. 아직 군집화 수업을 듣기 전이라 이것도 맞는 방향인지 모르겠습니다. 선생님께서 생각하는 방향과 제가 생각한 방향이 일치할지 모르겠습니다. 또 제가 잘못 생각하고 있는 부분이 있으면 말씀부탁드려요 :)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 멀티스레딩에 관해서 큰줄기를 잡아가는 중입니다 멀티 스레딩의 기본적인 개념과 쓰임새는 이해를 했습니다. 멀티 스레딩을 사용할 경우에 겪을 수 있는 오류, 즉 다수의 스레드의 경합에 의해서 데드락에 걸리는 경우도 이해를 했습니다. 거기다, 해당 오류에 대한 해결책이 경합시 원자성을 바탕으로, 목표 프로세스는 하나의 스레드에 의해 처리되고 나머지 스레드는 대기하게 만드는 거라고 이해했습니다. (혹시 제가 잘 못 이해한거라면 고쳐주세요!) 원자성을 보장하는 방법에 관해서 제 예상과 강의가 조금 달라서요 강의 초반에 해주신 설명과, 의사코드로 보여주신거로 봐서 처음에는 이 원자성을 보장하는 방법도 C#코드로 구현이 될 거라고 생각했는데, C#에서 마련된 InterLocked 클래스를 쓰시더라고요 거기다 의사코드로 설명하실 때, 이건 이렇게 몇줄로 나눠진 거라서, 화장실에 동시에 2명이 들어가는 가능성이 있다라고 하셨는데 InterLocked를 쓰니까 같은 내용인데 해당 오류가 방지되는걸 보고서 다음과 같은 생각이 들더라고요 원자성은 다른 스레드가 침범할 수 없는 하나의 막을 두루는 것이며 InterLocked클래스가 바로 이 보호막을 둘러달라고 C#에 마련되어 있는 CPU에게 요청하는 방법이 아닌가 싶습니다. 혹시 제가 이해를 똑바로 한 걸까요?
파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
안녕하세요 좋은 강좌 감사합니다 파이썬 3.8.1 윈도우즈인데요 가상환경에 들어가서 python 치고 실행하면 제대로 설치된걸로 나오는데요 which python치면 which : 'which' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포 함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오. 위치 줄:1 문자:1 + which + ~~~~~ + CategoryInfo : ObjectNotFound: (which:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException 이런 에러가 나옵니다 ㅠㅠ 인터프리터 문제인가 해서 쉬프트 컨트롤 p눌러서 인터프리터를 해당 가상환경 폴더의 scripts/python으로 지정했습니다(이렇게 하는게 맞는건지는 모르겠지만요) 그리고 which python치면 같은 에러가 계속 나옵니다
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] http://haah.kr/2017/05/23/rest-http-method-in-html-form - 해당 글을 읽어 봤는데 잘 이해가 되지 않습니다. - DELETE는 form 을 통해 값을 전달할게 없다는것은 알겠는데 - 위 블로그 글에서 PUT 의 내용이 이해가 안되네요.. - 그래서 GET/POST만 지원하는 궁극적인 이유가 무엇인가요~? 아래는 PUT 내용입니다. - PUT도 전송해야할 것은 대상 리소스를 대체할 representation 그 자체인데, 대상 리소스더러 조각난 form 데이터를 처리하라고 보낼 수는 없는 노릇