1.setCommentFormOpened(prev => !prev); => prev는 정해진 이름인가요? 예를들어 kimch 이런식으로 이름을 지어줘도 괜찮나요? 2. !me => me가 null 이면 !me 라고 생각해도 될까요? 3. useCallback() => 정확히 잘 모르겠습니다. "- useCallback으로 감싸는 함수기준은 자식 컴포넌트에 넘겨주는 함수는 무조건 감싸준다고 보면됨 " 으로 제가 정리해두기는 했지만 .. 넘겨준다는게 무슨 뜻인가요? 다른 컴포넌트에서 cosnt name => ({component})=>{}이런식으로 ({component}) << 이 부분에 들어갈수있는 모든것들은 useCallback()로 감싸주어야하나요? 4. useCallback() => 뒤에 .[] << 이부분의 정확한 용도가 무엇일까요? useEffect()의 .[] 처럼 대괄호 안에있는 변수나 조건등등이 바뀔때마다 렌더링된다로 이해하면 될까요? 마지막으로 긴 글 읽어주셔서 감사합니당!
안녕하세요, 하나 여쭤보고 싶은 것이 있어서 질문 남기게 되었습니다. 강의(11.3 강의 1분 30초 부근) 중에 말씀하시길, printf("%s %u %u\n", mythings[0], (unsigned)mythings[0], (unsigned)temp1); 에서 같은 값이 출력되는 이유는, (unsigned)mythings[0], (unsigned)temp1 모두 포인팅만 하기 때문에, text segment 에 컴파일러가 둔 결과라고 설명해주셨습니다. 그러나, 이전 강의 (11.2 메모리 레이아웃과 문자열, 12분 부분) 를 다시금 들어보니 char* str = "Hello, World!" 와 같은 코드가 작성되면, 문자열 리터럴은 컴파일 때 값이 정해져, Read only Data segment에 위치한다 고 말씀하셨습니다. 그러다보니 조금 헷갈려서요 ^^ 혹시 본 강의에 언급된 경우엔 data segment, text segment 둘 중 어디에 속한다고 봐야 할까요? :)
현재 스프링 부트 공식 페이지 보고 알았네요. 따라하시는 분들, 아마 Resource 임포트 안되실 겁니다. 강의 이후에 공식 클래스 이름이 바뀌었나보네요. 도큐먼트에 다음과 같이 나와있습니다. 참고하세요. ResourceSupport is now RepresentationModel Resource is now EntityModel Resources is now CollectionModel PagedResources is now PagedModel 마찬가지로 linkTo 임포트 안되시는 분들은 임포트 부분을 다음으로 바꿔보세요 ㅎㅎ import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.* ;
package main import ( "fmt" "runtime" "sync" "sync/atomic" // _ "time" ) func init() { fmt.Println("Go Sync Advance study 4") } func onceTest() { fmt.Println("onceTest !!") } func main() { // 고루틴 동기화 고급 // 원자성 사용 -> 기능적으로 분할 불가능한 완전 보증된 일려의 조작 // 모든 조작이 완료 될 때까지 다른 프로세스 개입 불가 // sync/atomic 에서 원자적 연산자 제공 // https:// golang.org/pfg/sync/atomic 에서 계열 확인 가능 runtime.GOMAXPROCS(runtime.NumCPU()) var cnt int64 = 0 wg := sync.WaitGroup{} maxN := 5000 for i := 0; i < maxN; i++ { wg.Add(1) go func(n int) { //cnt++ atomic.AddInt64(&cnt, 1) wg.Done() }(i) } maxN = 2000 for i := 0; i < maxN; i++ { wg.Add(1) go func(n int) { //cnt-- atomic.AddInt64(&cnt, -1) wg.Done() }(i) } var finalCnt int64 = 0 finalCnt = atomic.LoadInt64(&cnt) wg.Wait() fmt.Println("finalCnt : ", finalCnt) fmt.Println("cnt : ", cnt) } 상기 코드를 실행하면 cnt 는 3000 항상 나오는데 finalCnt 는 3005같은 다른 값이 나오는데, 혹시 놓친 부분이 있을까요?
안녕하세요! 1.firebase 통합 창에서 보면 5가지 (GA, Crashlytics, Predictions, Cloud Messaging, Performance Monitoring) 를 모두 킬 필요는 없는 거겠죠? 분석을 위한 환경을 만든다고 하면 이 중에서 어떤 것들을 on 시키면 될까요? 2. table 이 일자별로 쌓이는데 원래 이게 맞는건가요?? 아니면 setting 을 변경해주어야 하는게 있을까요? 하나하나 해보는 중인데, 덕분에 잘 따라가고 있습니다. 감사합니다!!
안녕하세요. 수업 잘 들었습니다. 그런데 제 코드에서는 문제가 하나 발생합니다. 승자가 나올 경우 팟머니를 가져가는 것 까지는 정상 작동하는데, 이후에 다시 한번 승자가 나올 경우 revert에러가 발생합니다. 이때 팟머니도 변화가 없고 WIN 이벤트도 생성이 안 됩니다. 일단 에러가 나면 이후부터는 동일한 revert에러로 베팅 자체가 안 되고요. 아무리 코드를 살펴봐도 문제를 모르겠더라고요. 그래서 혹시 git이나 메일을 통해 코드 원본을 받을 수 있을까요?
안녕하세요. 강의 잘 듣고 있습니다. e = np.arange(0,9).reshape(3,3) e[np.array([0,2]), np.array([0,1])]을 하면 [0 7]이 나오는데, 왜 [[0 1], [6 7]] 이 아니라 [0 7]이 나오는지 궁금합니다. 감사합니다.