public void Send(byte[] sendBuff) { lock (_lock) { _sendQueue.Enqueue(sendBuff); if (_pendingList.Count == 0) RegisterSend(); } } void OnSendCompleted(object sender, SocketAsyncEventArgs args) { lock (_lock) { if (args.BytesTransferred > 0 && args.SocketError == SocketError.Success) { try { _sendArgs.BufferList = null; _pendingList.Clear(); // Doing if (_sendQueue.Count > 0) RegisterSend(); } catch (Exception e) { Console.WriteLine($"OnSendCompleted Failed {e}"); } } } } 수업을 들으면서 Send와 OnSendCompleted에 lock이 서로 다른 두개이상의 쓰레드가 동시에 sendQueue, pendingList에 Write하는 것을 방지하는 것이라고 이해했습니다. 그리고 Send의 if문이 다른 쓰레드가 전송중일때를 체크하는 것이라고 들었는데 저 2개의 lock구조에서, 쓰레드A가 OnSendCompleted의 lock구역안에 있을 때 쓰레드B가 Send의 lock구역에 진입이 가능한지 궁금합니다. 만약 접근이 안된다면 pendingList.Count가 항상 0이 되지않을까 생각하고 있습니다.
https://www.inflearn.com/questions/944736 의 질문을 읽어봤습니다. "remove()를 하게 되면 A의 데이터가 사라지는 것은 아니고 ThreadLocal 의 해당 변수의 데이터가 사라진다? " 가 이해가 되지 않네요. 다음 강의인 정리의 마지막 부분에서 영한님이 말씀하시길 사용자A의 전용 보관소의 데이터를 꼭 지우라고 하셨거든요. 그리고 사용자A가 remove()를 했다면, 사용자B는 조회시 애초에 아무것도 저장하지 않았으므로 어떤 값도 못 얻는 것 맞을까요? (심지어 thread-A 쓰레드를 할당받더라두요) 감사합니다.
제목처럼 Sequenital을 import해서 쓰는 것과 keras.Sequential을 쓰는 것의 차이가 있나요? models의 차이가 있는지 궁금합니다. 실행했을 땐 똑같긴한데.. 굳이 왜 다른지 궁금합니다. Dense(1, input_shape = (2, ), ....) 에서 왜 2가 앞에 쓰이는 건가요?? 앞은 보통 행인데...ㅠㅠ keras가 행은 몇개인지 몰라도 되는데 피쳐는 몇개인지 알아야 하는건가요?
해결완료 해당 사진에서font_path 에서 Windows 앞글자를 소문자로 해서 났던 오류인가 싶습니다 (당시에는 대소문자 관게없이 같은 오류가 났어요) 검색해보니 워드클라우드에서 지원하는 폰트가 있고 아닌 폰트가 있다는것 같더라고요 font_path='malgun' 라고 써주거나 기본폰트중 하나인 'HY동녘M 보통'을 사용하여 font_path="C:\Windows\Fonts\HYDNKM.TTF" 라고 써주니 해결되었습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 개인적인 사정으로 인해 인텔리제이가 아닌 codespace ide를 사용해서 수강중입니다. controller 파일과 hello.html 파일 둘 다 pdf 에서 그대로 복사하여 실행했는데 404에러가 나옵니다. 문제가 무엇일까요
3일내내 봐도 도저히 모르겠습니다. member를 인식을 못해서 나오는 오류같은데... 왜그러는지 모르겠네요 https://drive.google.com/file/d/14g_0hPnQMDfxNpcRIfCwjEczhci0loYu/view?usp=drive_link 드라이브 링크 올리고 OrderApp 에서 실행시키면 null point 나옵니다. 도와주세요
안녕하세요. 로그인 코드 작성 완료 후 테스트로 포스맨을 호출했을 때 2가지 오류가 발생했었습니다. Error: Login sessions require session support. Did you forget to use express-session middleware? secret option required for sessions 1번은 express-session 아래에 passport를 작성하라는 것 같아서 강사님의 깃 보고 아래 코드를 추가했었고 app.use(cookieParser()); app.use( session({ resave: false, saveUninitialized: false, secret: process.env.COOKIE_SECRET, cookie: { httpOnly: true, }, }), ); 2번은 검색해보니 secret 설정을 하면 된다고 해서 .env 파일에 COOKIE_SECRET에 대한 값을 넣어줘서 1,2번 전부 해결했었습니다. 다만, 강의에는 이미 들어가있던 부분이였던 아래 코드와 passport.session을 같이 사용하는 이유가 궁금합니다! passport.session만 사용하니 express session의 미들웨어를 사용하라는 것 같았고, express session을 찾아보니 express session만 사용해서 로그인을 구현하기도 하는 것 같았습니다. app.use(cookieParser()); app.use( session({ resave: false, saveUninitialized: false, secret: process.env.COOKIE_SECRET, cookie: { httpOnly: true, }, }), ); 그리고 secret는 express session의 암호로만 알고 있어도 되는걸까요? .env 파일에 제가 임으로 설정한 암호를 예를들어 COOKIE_SECRET=12314 이런식으로 작성해놓는게 맞는건가요?? ++ 그리고 수업 별개로 추가 질문 사항이 있습니다! 현재 강의에서 사용되는거는 typeORM 0.3 버전인가요? 실무에서는 0.2 버전보다 0.3으로 많이 사용되는건가요??
안녕하세요. 선생님 덕분에 점차 고수의 길로 들어서고 있습니다. 강의를 듣던 중 공부 방법에 대해 고민이 생겼습니다. 제 머리로 그렇겠지~ 하는 것보다는 선생님의 답변을 듣는 것이 나을 거 같아 질문 드립니다. 1) 강의 듣기 전 문제 도전 2) 못풀겠으면 강의를 틀고 선생님께서 주시는 힌트를 약간 받아 다시 도전 3) 그래도 안된다면 선생님 강의를 듣고 무릎을 탁 침 4) 어떠한 문제로 풀지 못했는지 메모 5) 바로 다시 풀어보기 현재는 이런 과정을 거치고 있는데요 기존 풀어본 문제도 다시 계속 풀어봐야 하나요? 오랜만에 다시 풀어보려니까 전에 풀지 못한 문제는 기억이 나지 않는 것들도 있어서요.. 코딩테스트는 무조건 많이 풀어보는게 중요하다! 는 말을 많이 들어서 계속 치고 나가는게 좋을지 치고 나가는 속도는 좀 더디더라도 복습을 하면서 치고 나가야할지 선생님의 조언을 기다립니다. 저는 현재 인텔리제이에서 연습하고 있는데 괜찮을까요..?
int main(){ int i, min= 21470000, a; for(i=1; i<=7; i++){ scanf("%d", &a); if (a < min) min = a; } printf("%d", min); return 0; } 사용자가 입력 값을 5 3 7 11 2 15 17 와 같이 띄어쓰기가 포함된 입력 값을 입력하는데, 짜여진 코드에서는 띄어쓰기를 고려한 부분이 없는 것 같습니다. 이 부분에서 궁금한 점이 있는데, scanf("%d ", &a) 와 같이 d 다음에 띄어쓰기를 포함하지 않고 스캔을 받더라도 OS가 자동으로 띄어쓰기를 고려하여 입력 값을 처리하는 이유가 무엇인가요??
섹션7 - 다양한 의존관계 주입 방법 수강 중입니다. 수정자 주입 방식에서 주입할 파라미터가 없다면 오류가 발생한다는 부분에서 궁금한게 있습니다. 주입할 파라미터가 Bean 객체 대상인데 아직 생성되지 않으면 그것을 먼저 생성해주고 주입하는 것이 맞나요? 파라미터가 1개이고 Bean 객체 대상이 아니면 굳이 required = false해주지 말고 아예 Autowired 애노테이션을 작성하지 않아도 되는건가요?
안녕하세요 강의 디버깅중에 저희가 본 내용은 여기입니다. 그런데 위에 보시면 169라인 exception instanceof AuthenticationException 인증예외도 잡더라구요. 그런데 저부분은 현재 강의에선 이용하지않고 지금 강의는 AuthenticationFailureHandler 를 별도로 상속받아 클래스를 만들어 처리하고 있다고 생각하면 될까요 ?
Cannot fit requested classes in a single dex file 파이어베이스 리얼타임 데이터베이스 저장하기 강의에서 위와 같은 오류가 떴을때의 해결법입니다. multidex 지원 라이브러리를 추가해주시면 됩니다. 2번째 gradle 파일에서 android 부분안에 defaultConfig 괄호안에 multiDexEnabled true 를 넣고 dependencies 항목에 implementation 'androidx.multidex:multidex:2.0.1' 를 추가하신다음 sync now 해서 실행하시면 오류가 해결이 됩니다. 출처입니다. https://0391kjy.tistory.com/31
[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part3: 자료구조와 알고리즘
vector에 반복문 i를 차례대로 push_back 하고 있는데요! 벡터의 푸쉬백을 들어가보면 CONSTEXPR20 void pushback(const Ty& Val) 이렇게 복사가 아닌 참조 형태로 되어 있던데 for문이 끝나면 i도 사라지닌까 무효한 참조가 되는것 아닌가요?? 왜 가능한지? . ? 궁금합니다..
https://www.inflearn.com/course/%EC%8B%A4%EB%AC%B4-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%B3%B4%EC%95%88-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D 이 강의와 https://www.inflearn.com/course/%EC%8B%A4%EB%AC%B4%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%EC%A4%91%EC%9D%B8-aws%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-iam-part1 이 강의 둘다 구입했습니다 어떤걸 먼저 듣는게 나을까요?